我如何开始在类似Unix的操作系统(如Linux)中编写守护程序进程?

时间:2010-09-01 16:46:41

标签: c++ linux unix ipc daemon

我正在使用PHP工具供个人使用。但PHP非常慢,我需要做的任务需要花费很多时间,因此我将在c ++中创建一个守护进程并将其保留在后台(它将在VPS中运行)。

PHP将通过简单的tcp套接字连接到守护进程(我将尝试设计/使用简单的IPC协议)以提交任务。守护程序将使用简单的FIFO队列管理任务。 PHP只会启动任务,但它不会等到它结束,因为它可能需要几分钟(PHP也会监视任务 - 但这是另一个主题)。

Web / PHP界面根本不会成为问题。但我没有unix守护程序编程的经验。我在Linux上用c ++制作了简单的控制台程序,所以我只需要一本手册/书籍/指南和建议来开始使用unix守护进程。

感谢。

1 个答案:

答案 0 :(得分:5)

http://www.enderunix.org/docs/eng/daemon.php提供了一个相当彻底但简短的介绍,其示例代码似乎涵盖了所有重要的内容。如果你愿意在纸上花钱(值得一提,恕我直言),那么在“UNIX环境中的高级编程(第2版)”中有更深入的描述。

上面的链接不处理init脚本,但你可以通过一些搜索来解决这个问题 - 所有你需要的是启动守护进程代码的某种方式以及稍后发送信号的某种方式 - 通常,你写的守护进程的PID到/ var / run / XXX文件。