gpt4 book ai didi

php - 一直运行的进程

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:41:52 25 4
gpt4 key购买 nike

有什么方法可以确保某些进程始终运行?

假设我需要它运行:

php -f myscript.php -param1=value1

现在我这样做:

进程启动后,PID 立即写入文件 (myProcess.pid)。然后我安排了一个 cronjob,它定期尝试每 5 分钟一次又一次地启动该过程。

该进程实际上是一个bash 脚本文件,它首先检查myProcess.pid 是否存在,如果该文件中的PID 确实在运行,则启动它并用新的 PID 重写“myProcess.pid”。

该解决方案存在几个问题:

  1. “cron 检查”之间的“中断”时间段如何?
  2. 那段时间呢?花费不必要的 CPU 时间 5 分钟是不是太多了?
  3. 如果文件 myProcess.pid 已被泄露或被某人/某物删除怎么办?然后 bash 脚本再次启动它,即使它已经在运行。
  4. 如果进程终止并且确切的 PID 占用另一个进程怎么办?

有没有更好的方法?

最佳答案

您需要某种监控应用程序,例如

Supervisor is a client/server system that allows its users to monitor and control a number of processes on UNIX-like operating systems.

或者,您可以创建一些守护进程 php 代码:

关于php - 一直运行的进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7049963/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com