【问题标题】:How best to control (issue command signals to) a PHP-based Daemon script?如何最好地控制(发出命令信号)基于 PHP 的守护程序脚本?
【发布时间】:2011-01-06 23:02:57
【问题描述】:

我创建了一个 PHP 守护程序脚本来持续监视服务器文件系统上的特定目录中的新文件,然后处理和归档它们。

注意:我正在使用一个 php Daemon 类,提供于:
http://www.phpclasses.org/browse/file/8958.html

我已经运行了脚本,但我需要一种与守护进程交互并发出命令的方法。例如,一个非常有用的命令是“STOP”! :) 我目前必须手动终止该进程。

我在使用控制文件之前已经这样做了(即,检查文件是否有新命令,如果存在则执行它,然后清除文件)。我也使用过套接字,但这个问题并不需要任何网络。有没有更好、更优雅或更自然的方式向守护进程发送命令信号?

我确实找到了这个:
PHP Daemon/worker environment
但恐怕我没有完全掌握如何使用提供的代码。

【问题讨论】:

    标签: php daemon command


    【解决方案1】:

    一种可能的解决方案是使用信号——例如,请参阅pcntl_signal:您的 PHP 守护程序将侦听信号,而您只需从“外部”发送信号。

    这是在 UNIX/Linux 上经常使用的一种方式——但请注意,pcntl_* 函数在 Windows 上不可用。 (您发布的课程已经在使用pcntl* 函数,所以这里没有新内容)

    【讨论】:

      【解决方案2】:

      在 *nix 上,您可以使用信号来控制您的守护进程;请参阅pcntl_signal()signal(7) 手册页。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-06-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多