我正在使用Vertx和HazelCast来分发关于网络的Verticle。
不,我有问题,我的同事也使用群集Verticle和HazelCastManager。 有没有可能避免,我们的veticles看到对方防止副作用?
答案 0 :(得分:4)
您可以在cluster.xml文件中定义Hazelcast群组。 这是与之相关的手册部分: http://docs.hazelcast.org/docs/3.6/manual/html-single/index.html#creating-cluster-groups
答案 1 :(得分:3)
如果您使用多播(默认配置)进行发现,则可以重新定义组名和密码。除此之外,您可以选择Vert.x中给定的Hazelcast版本支持的任何其他发现选项: http://docs.hazelcast.org/docs/3.6/manual/html-single/index.html#discovering-cluster-members
答案 2 :(得分:0)
古老的问题,但仍然有效,这是简单的答案:
如果要将vertx系统限制为单个服务器,即事件总线不会在本地网络中泄漏,那么最简单的方法是在类路径上创建Hazelcast的cluster.xml的本地副本,即copy /编辑vertx来源(请参阅git):
vertx-hazelcast/src/main/resources/default-cluster.xml
进入vertx项目中的新文件
src/main/resources/cluster.xml
所需的更改是禁用该功能的<multicast>
节:
<hazelcast ...>
...
<network>
...
<join>
...
<multicast enabled="false">
...
</multicast>
<tcp-ip enabled="true">
<interface>127.0.0.1</interface>
</tcp-ip>