hazelcast集群2节点同一台机器

时间:2016-06-28 14:01:06

标签: hazelcast

我正在开发一个分解为多个微服务的应用程序。现在,我只有一台服务器,并且运行了3个微服务,每个服务器都在不同的jvm进程中。

我想在hazelcast集群中配置它们,以便我可以使用ReplicatedMap在各个进程之间共享一些信息。

我的问题是:我如何配置hazelcast xml,以便我的3个进程可以在同一台机器上加入集群,并共享一个ReplicatedMap?

是我想要的吗? 看起来集群只能跨多个服务器安装。

注意:我的服务器是AWS EC2服务器,所以我想避免使用多播。

1 个答案:

答案 0 :(得分:1)

是的,这是Hazelcast的最佳用例。您可以使用IMap(分布式映射)在节点之间共享数据 只需将以下配置添加到Hazelcast.xml的join模块中,然后启动实例即可。他们将自己发现并组成一个集群。

<join>
  <multicast enabled="false">
  </multicast>
  <tcp-ip enabled="false">
  </tcp-ip>
  <aws enabled="true">
    <access-key>my-access-key</access-key>
    <secret-key>my-secret-key</secret-key>
    <iam-role>s3access</iam-role>
    <region>us-west-1</region>
    <host-header>ec2.amazonaws.com</host-header>
    <security-group-name>hazelcast-sg</security-group-name>
    <tag-key>type</tag-key>
    <tag-value>hz-nodes</tag-value>
  </aws>
</join>

标签键&amp;标签值属性是连接在一起并形成集群的负责人。