2016-06-28 14 views
1

私は複数のマイクロサービスに分割されたアプリケーションを開発しています。今のところ、1つのサーバーと3つのマイクロサービスがそれぞれ異なるjvmプロセスで実行されています。ヘイルキャストクラスター2ノード同じマシン

私はそれらをハローキャストクラスタで構成したいので、ReplicatedMapを使用してプロセス間で情報を共有することができます。

質問:私の3つのプロセスが同じマシン上のクラスタに参加してReplicatedMapを共有できるようにするには、hazelcast xmlをどのように設定するのですか?

私は可能なのですか? クラスタは複数のサーバーにしかマウントできないようです。

注:私のサーバーはAWS EC2サーバーなので、マルチキャストを使用しないでください。

答えて

1

はい、これはHazelcastの最適な使用例です。分散マップであるIMapを使用して、ノード間でデータを共有することができます。
以下の設定をHazelcast.xmlの結合モジュールに追加し、インスタンスを起動するだけです。彼らはお互いを発見してクラスターを形成します。

<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> 

タグキー&タグと値のプロパティが一緒に参加すると、クラスタを形成するための責任を負うことになるものです。

関連する問題