【发布时间】:2017-06-02 20:27:24
【问题描述】:
有一个应用程序堆栈包含
- 2 个嵌入式 hazelcast 应用程序; (应用 A)
- 2 个使用 hazelcast 客户端的应用程序。 (应用 B)
App B需要在节点之间协调任务执行,所以只有一个节点执行特定任务。
使用app A,通过将网守创建为库来实现相当容易,需要查询任务执行许可。网守将跟踪集群中的 hazelcast 成员,并仅将许可分配给单个节点。它将注册一个MembershipListener 以跟踪集群中的变化。
但是,app B,作为 Hazelcast 客户端,不能使用这样的看门人,因为客户端无法访问ClientService(通过 hazelcastInstance.getClientService()),因此无法注册一个ClientListener(类似于 MembershipListener,但用于客户端节点),以便在添加或删除客户端时收到通知。
如何为以HazelcastClients 身份加入集群的应用程序实施这种协调网守?
【问题讨论】:
标签: hazelcast