supervisor 如何实现进程依赖?比如确认 A 进程执行成功后再执行 B 进程,否则不执行。

2017-09-12 09:15:24 +08:00
 Tink
2384 次点击
所在节点    问与答
9 条回复
jameshuazhou
2017-09-12 09:51:56 +08:00
换 systemd 吧
zjb861107
2017-09-12 09:59:06 +08:00
&&
用这个不行么?
Tink
2017-09-12 10:03:04 +08:00
@zjb861107 #2 目前就是这么做的,但是这样相当于在一个 program 里跑了俩进程
UnisandK
2017-09-12 10:06:47 +08:00
之前查过,想让俩进程按顺序启动,好像。。并没有办法
想在 supervisor 分开两个的话,要不试试在 B 进程的启动脚本里加 supervisorctl 操作 A 进程启动。。
clino
2017-09-12 10:08:51 +08:00
要不再写一个脚本负责检查 A 然后启动 B,这个脚本让 supervisor 跑?
Tink
2017-09-12 10:12:21 +08:00
@UnisandK #4。。这个感觉有点僵啊。。。
@clino #5。。。。。

感觉这东西还是没有 systemd 好使,按理说这种基础需求应该具备
clino
2017-09-12 10:21:31 +08:00
@Tink https://github.com/Supervisor/supervisor/issues/122 open 了好多年了,后面好像有人在自己的 fork 里实现了
zjb861107
2017-09-12 11:38:05 +08:00
试试通过 supervisor 的 event 或者 group 实现
bazingaterry
2017-09-12 11:52:42 +08:00
一般这种情况不是程序逻辑里实现吗?

B 启动的时候判断一下 A 是否启动,没启动就 Sleep 一下,失败次数超过阈值就抛异常。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/389958

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX