关闭本地客户的hazelcast exector服务

时间:2016-09-13 22:59:13

标签: executorservice hazelcast shutdown executor

我们正在使用hazelcast执行器服务在我们的服务器集群中分配任务。

我们希望关闭其中一台服务器并将其从群集中移除,但允许它继续工作一段时间以完成它正在执行的操作但不接受来自hazelcast执行器服务的任何新任务。

我不想关闭hazelcast实例,因为当前的任务可能需要它来完成他们的工作。

关闭hazelcast执行器服务不是我想要的。这会关闭集群范围内的执行程序。

我想继续处理本地队列中的任务,直到它为空,然后关闭。

有没有办法让我让集群中的节点继续使用hazelcast但是告诉它停止接受执行服务中的新任务?

1 个答案:

答案 0 :(得分:2)

不是那么容易,但是你有成员属性(Member :: setX / :: getX),你可以设置一个属性来表示"没有新的任务请"当您提交任务时,您可以根据属性预先选择要执行的成员,或者使用MemberSelector的重载。