小编Mat*_*sen的帖子

我如何在 upstart、runit、supervisor、daemontools、... 之间进行选择,以便在进程终止时重新启动进程?(过程监督/监控)

我有一个 Nginx 网络代理、gunicorn 网络服务器和一个 python/flask 网络应用程序。Gunicorn 进程显然已经死了,我想在未来通过研究一种实用程序来改善这一点,该实用程序可以在 gunicorn 进程再次崩溃时监控并重新启动它。

我发现了几个可以完成这项工作的流程监督实用程序:

  • 守护进程
  • 启动
  • 运行
  • s6
  • 导师
  • 系统D
  • 暴发户
  • ...

是否有一篇综合文章比较和对比了用于监视和重新启动进程的各种实用程序?

https://en.wikipedia.org/wiki/Process_supervision

upstart daemontools supervisord runit

13
推荐指数
1
解决办法
5856
查看次数

为什么有些 RPM 是“不可重定位的”?

如果您可以像这样安装 RPM,则它是可重定位的:

rpm -ivh --prefix=/path/to/non/default/dir package-name.rpm
Run Code Online (Sandbox Code Playgroud)

没有收到以下错误消息:

error: package package-name is not relocatable
Run Code Online (Sandbox Code Playgroud)

链接指出:

RPM 能够让用户在决定将软件包安装在他们系统上的位置时有一定的自由度。然而,包构建者必须首先设计他们的包来给用户这种自由。换句话说,可以安装到不同目录的 RPM 包被称为可重定位的。请注意,并非所有 RPM 软件包都可以安装到另一个目录中。

然而,它并没有解释为什么包构建者不希望允许用户自由决定安装包的位置。

那么,为什么使特定包不可重定位是个好主意?

redhat rpm

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

daemontools ×1

redhat ×1

rpm ×1

runit ×1

supervisord ×1

upstart ×1