有一个包含
的应用程序堆栈App B 需要协调节点之间的任务执行,因此只有一个节点执行特定任务。
使用 app A ,通过将网守创建为库来实现相当容易,需要查询任务执行许可。网守将跟踪集群中的hazelcast成员,并仅为单个节点分配许可。它将注册MembershipListener
以跟踪群集中的更改。
然而,作为Hazelcast客户端的 app B 无法使用此类网守,因为客户端无法访问ClientService
(通过hazelcastInstance.getClientService()),因此它无法注册ClientListener
(类似于MembershipListener,但对于客户端节点)以通知添加或删除的客户端。
如何为加入群集的应用程序HazelcastClient
s?
答案 0 :(得分:1)
您可能必须在成员上使用侦听器(获取群集中最旧的成员并在“master”更改时更新侦听器)并使用ITopic通知其他客户端。
现在想不出另一种方式。