`
wudixiaotie
  • 浏览: 132081 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

erlang simple_one_for_one监控策略

 
阅读更多

在工作的时候遇到过这样的问题,由simple_one_for_one的supervisor创建的所有子进程在supervisor挂掉后不会被重启,才想到simple_one_for_one的supervisor会有这个隐患,同事提出个解决方案,把simple_one_for_one换成one_for_one,每次想动态子进程也可以调用supervisor:start_child。这个是个不错的方案,那么难道用simple_one_for_one就不能实现supervisor重启后子进程也重启么?当然能。怎么做呢?

 

 应该在让顶层supervisor启动manager,manager的init中启动下级的supervisor,然后创建子进程,如果二级supervisor挂了,与其链接在一起的manager也挂了,这样顶级supervisor重启manager的时候又会重启supervisor,并创建子进程。

 

 

  • 大小: 83.2 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics