【问题标题】:Hazelcast Client Server connection detailsHazelcast 客户端服务器连接详细信息
【发布时间】:2013-12-30 11:14:58
【问题描述】:

我在 Amazon EC2 上设置了一个 2 节点 hazelcast 集群。在其中一个节点上,我有一个客户端程序,它连接到集群并运行 atomiclong 计数器增量和获取操作。

如何找出客户端连接到哪个 Hazelcast 服务器节点并运行 incrementAndGet 操作?

谢谢

【问题讨论】:

  • 您使用的是哪个 Hazelcast 版本。那么你使用的是 2.x 还是 3.x。
  • Hazelcast 版本 3.1.3

标签: hazelcast


【解决方案1】:

AtomicLong 由单个分区拥有,而分区由单个成员拥有。

在 Hazelcast 3 中,客户端知道哪个成员拥有哪些分区,因此它会自动将 AtomicLong 上的调用转发到正确的机器。

[编辑] 为什么你需要知道?

【讨论】:

  • 谢谢。正如我所提到的,我有一个 2 节点 hazelcast 集群,并且在每个节点上我都有一个客户端正在运行。我想知道客户端是连接到本地 hazelcast 服务器还是远程 hazelcast 服务器。如何在 hazelcastclient 上启用详细日志记录以找出客户端也在发送请求的 hazelcast 服务器?
  • 客户端会自动连接所有成员;一旦连接到一个,它将使用成员/分区信息不断更新。
  • 我在一个 EC2 实例中运行我的 hazelcast 服务器和客户端。这个实例是自动缩放的,所以我有很多客户端和服务器。我目前正在使用 cluster.addMembershipListener 和 memberAdded 和 memberRemoved 方法,我正在使用 hazelcast 服务器的 IP 重新初始化 ClientConfig 和 HazelcastClient。你的意思是说不需要初始化ClientConfig & HazelcastClient。我这样做是因为如果本地 hazelcast 服务器出现故障,客户端将能够连接到集群中的其他 hazelcast 服务器。让我知道。 - 谢谢
  • 只要客户端能够连接到一个,它就会知道一切。所以不需要为客户端配置所有的集群成员;足以确保您的客户端能够连接到其中至少一个。与其中一个成员建立连接后,它将自动了解集群中的所有成员。
  • 您的问题解决了吗?如果是这样,请将答案标记为向上,这样人们就不需要提供其他答案了。
猜你喜欢
  • 1970-01-01
  • 2010-11-26
  • 2011-03-02
  • 1970-01-01
  • 1970-01-01
  • 2020-08-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多