Ruby守护进程-什么是监视器,它是如何工作的?

Ruby守护进程-什么是监视器,它是如何工作的?,ruby,monitor,daemons,Ruby,Monitor,Daemons,因此,Ruby的守护进程gem允许您在启动进程时设置monitor=true。显示器到底是什么?你用它做什么?您所要做的就是指定true或false…这是在某处创建日志文件吗?实际上正在监视这个过程的东西,比如上帝?为什么关于这件事的文件如此可怕 或者这实际上是每个人都应该知道的一件Unix事情吗?:) 来自: :监视:监视程序并重新启动崩溃的实例 看起来它设置了一个PID文件(即保存守护进程进程ID的文件)来跟踪守护进程;如果守护进程因某种原因崩溃,监视器将重新启动它 你必须问作者为什么他们的

因此,Ruby的守护进程gem允许您在启动进程时设置
monitor=true
。显示器到底是什么?你用它做什么?您所要做的就是指定
true
false
…这是在某处创建日志文件吗?实际上正在监视这个过程的东西,比如
上帝
?为什么关于这件事的文件如此可怕

或者这实际上是每个人都应该知道的一件Unix事情吗?:)

来自:

:监视:监视程序并重新启动崩溃的实例

看起来它设置了一个PID文件(即保存守护进程进程ID的文件)来跟踪守护进程;如果守护进程因某种原因崩溃,监视器将重新启动它


你必须问作者为什么他们的文档如此稀少;虽然源代码看起来足够清楚,但可以理解正在发生的事情的要点。我认为任何构建了一两个守护进程的人都会熟悉监视和重新启动它们的概念。

Ahh,因此它看起来有一些辅助进程在不断运行,并检查PID是否仍然存在。如果没有,它(辅助进程)将启动后台进程进行备份。谢谢@罗布·卡梅隆:是的,差不多。这种事情在后台任务中相当常见,OSX的launchd()具有类似的“监视并重新启动”逻辑。