Hazelcast检测崩溃的节点

时间:2016-02-17 15:15:24

标签: java concurrency hazelcast

这是我的简化用例:

  • 我有两个嵌入式节点,每个节点都在自己的JVM中运行,位于同一台物理计算机上。我启动它们并形成一个简单的集群。
  • 两个节点都尝试获取相同的锁
  • 获得锁定的第一个保持30秒
  • 如果我杀死持有锁的节点,则群集需要5到10秒之间的时间才能断定节点已经死亡并释放锁

我的问题是:是否可以缩短杀死保持锁定的节点和实际释放锁定的群集之间的间隔?我需要它不到1秒。

我尝试了一些可用的属性,这似乎与这个问题有关:

hazelcast.socket.connect.timeout.seconds
hazelcast.client.heartbeat.timeout
hazelcast.client.invocation.timeout.seconds

没有任何帮助,我注意到锁的行为没有变化。

更新

似乎这两个是正确使用的:

<property name="hazelcast.socket.connect.timeout.seconds">1</property>
<property name="hazelcast.connection.monitor.max.faults">1</property>

我还没有看到它是否会在实际使用场景中导致稳定性问题。在这个简单的测试中它运作得很好。

0 个答案:

没有答案