【发布时间】:2018-03-30 13:11:57
【问题描述】:
我们有一个 akka 集群应用程序(对一些参与者进行分片)。有时,当我们部署并关闭我们的应用程序时,我们会看到一些类似的日志:
协调关闭阶段 [cluster-sharding-shutdown-region] 定时 10000 毫秒后退出
这发生在自上次部署 2 多天后的第一次部署中(例如星期一)。我们使用 JMX 帮助程序要求 akka 节点退出集群,我们也有以下代码:
actorSystem.registerOnTermination {
logger.error("Gracefully shutdown of node")
System.exit(0)
}
所以当这个错误发生时,最终节点离开集群(或者至少它关闭了管理akka集群的JMX入口点)但是进程没有完成并且日志“Gracefully shutdown of node”没有出现。因此,当这种情况发生时,我们需要手动关闭 java 进程(我们使用 supervisor 处理)并重新部署。
我知道超时可以通过配置来调整,但是增加这个超时有什么影响呢?为什么有时协调关闭会引发超时?协调关闭超时时会发生什么?
任何线索将不胜感激:D
谢谢
【问题讨论】:
标签: scala akka akka-cluster