重新启动=>暂时与永久 erlang 主管



我有一个三级监督树结构,其中顶层是一个监督,产生二级监督,产生工人。二级主管和工人都有瞬态重启策略。现在,我的工作程序崩溃并重新启动了max_restart次。此时,我希望主管崩溃max_restart次数,然后顶级主管崩溃。但我的二级主管死了,而一级主管没有重新启动它。二级主管用这个日志崩溃了

Context:    shutdown
Reason:     reached_max_restart_intensity

这被认为是";正常的";关机,因此主管没有重新启动,因为我正在使用瞬态的重新启动策略?如果我们希望中级主管重新启动,他们是否应该始终使用restart=永久?

来自主管文档:

只有当瞬态子进程异常终止时,即由于除正常、关闭或{shutdown,Term}之外的其他退出原因,才会重新启动瞬态子进程。

由于退出原因是shutdown,因此需要使用不同的restart策略。

最新更新