重新启动=>临时vs永久erlang主管

问题描述

我有一个三级监督树结构,其中顶层是主管,而主管是第二级主管,该主管可以生成工人。 二级主管和工作人员都具有瞬态重启策略。 现在我的工作人员崩溃了,并重新启动了max_restart次。此时,我希望主管崩溃max_restart时间,然后顶级主管崩溃。但是我的第二级主管去世了,第一级主管没有重新启动它。二级主管使用此日志崩溃

Context:    shutdown
Reason:     reached_max_restart_intensity

这是否被认为是“正常”关机,因此由于我使用的是瞬态重启策略,因此主管没有重启?如果我们希望中级主管重新启动,他们应该总是使用restart = permanent吗?

解决方法

来自supervisor documentation

仅当瞬态子进程异常终止(即,由于退出原因不是正常,关闭或{shutdown,Term})而异常终止时,才会重新启动。

由于退出原因是shutdown,因此您需要使用其他restart策略。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...