相关疑难解决方法(0)

确保进程始终运行

不久前,我开始使用 Cherokee 托管网站。对于外部源(FastCGI 等),如果找不到在指定套接字或端口上运行的进程,它可以选择启动进程。这很棒,因为这意味着如果 PHP 或 Django 站点发生故障(它们偶尔会发生故障),它会自动重新启动。

在使用 PHP-FPM 的新服务器上,我无法使用 Cherokee(它有一个 PHP 错误),因此我已转移到 NGINX。我真的很喜欢 NGINX(因为它的配置风格),但是我遇到了进程崩溃并且永远不会重生的严重问题。PHP 有时会这样做,但 Django 站点更像是一个问题。我已经为它们创建了 init 脚本,它们在启动时出现,但是如果它们在重新启动之间出现故障,这对我没有帮助。

我想我正在寻找 FastCGI 代理。像切诺基这样的东西,知道哪些进程应该在哪些套接字/端口上运行并按需重新生成它们。这样的事情存在吗?有没有办法将它构建到 NGINX 中(为了便于配置)?

fastcgi monitoring process-management

28
推荐指数
3
解决办法
5万
查看次数

Systemctl 可以重新启动已经死亡的进程,还是 Supervisor 进来的地方?

根据我的研究,Supervisor 和 Systemctl 似乎不能互换,但是它们具有重叠的功能;值得注意的是,它们都可以用于启动其他进程。但是,Supervisor 能够重新启动因任何原因而死亡的应用程序。我找不到任何表明 systemctl 能够做到这一点的东西。

Systemctl 可以用来重启已经死掉的进程吗?

此外,在我看来,大多数人会,例如,将 Postgres 和 Nginx 或 Apache 添加到 Systemctl,但会将他们的应用程序添加到主管。为什么是这样?他们不应该将所有这些都添加到 Supervisor 中,以便 Supervisor 在他们死后可以重新启动它们吗?

systemd supervisord

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

如何在 linux/CentOS 中杀死进程时自动重新启动进程

是否有任何命令/脚本可以在进程崩溃或终止时自动写入以重新启动进程(在识别进程 ID 之后)。

例如,我正在运行一个可执行的 bin 文件,并希望在每次崩溃或被杀死时自动重新启动。

linux centos

7
推荐指数
2
解决办法
2万
查看次数