2017-07-30 117 views
0

从几个地方读取,表明mapstore和maploader必须与Hazelcast节点一起运行。想知道是否有任何方法实现与Hazelcast Node分开的mapstore/maploader?跨多个开发团队共享Hazelcast群集

背景: 如果我对球队hazelcast集群,并且这个集群是由不同的子团队使用提供不同的地图数据,并且每个子团队应该落实他们所拥有的地图mapstore/maploader , 如何才能做到这一点? (请注意,每个子团队有自己的SVN仓库)提前

谢谢〜

回答

0

MapLoader的load()操作时才会激活,将有当钥匙丢失的关键节点上,所以没有办法推动其他地方的处理。

但是,每个地图可以有不同的MapStore/MapLoader实现,因此拥有不同的团队提供每个都是可行的。

实际上,您如何实现这一点取决于您的构建和部署实践。例如,每个团队的类可以位于类路径中的单独jar文件中。或者,可能会构建一个包含每个团队提供的类的单个jar文件。有很多方法存在!

+0

在hazelcast配置文件中有mapstore配置,这是否意味着对于添加的每个新的jar,我仍然需要手动更新config以指示每个新添加的map的mapstore?有没有办法在运行时添加mapstore配置? – Cheng

+0

有工厂类可以做到这一点,但“_clever_”解决方案与反思倾向于引入大量的技术债务。你想要解决什么问题?为什么在添加新Jar时很难更改配置文件 –

+0

地图1(队B)的所有者Hazelcast Cluster(队A)的所有者,地图2(队C)的所有者。 Prod环境文件和配置不能轻易更改。当团队C使用新的mapstore实现创建新映射时,不应为每个节点的所有者A团队发生更改。 – Cheng