PHP模拟守护进程
2011-08-27 22:58
309 查看
守护进程,也就是通常说的Daemon进程,是Linux中的后台服务进程。它是一个生存期较长的进程,通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件,像C,python,java等语言都支持守护进程,到目前为止,PHP暂不支持守护进程,浏览器每发起一次访问请求时,web服务器调用PHP,PHP执行请求并返回结果后就关闭了,变量无法常驻内存的,虽然你也可以把变量存储到文件、Memcache、Redis中去供下次调用,但链接其实是新建的。
其实在PHP中实现守护进程,还是有办法模拟的,主要运用到Linux的nohup命令,下面对这个命令进行介绍一下,具体可以查看相关手册。
百度百科:
nohup 命令
用途:LINUX命令用法,不挂断地运行命令。
语法:nohup Command [ Arg ... ] [ & ]
描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。
有了此命令,我们就可以在PHP_CLI模式下创建一个死循环,用来模拟一个守护进程。
1.创建文件daemon.php
2.启动守护进程
其中,log.php为日志文件,即在while循环中输出的信息,&表示脱离终端,放到后台执行
其实在PHP中实现守护进程,还是有办法模拟的,主要运用到Linux的nohup命令,下面对这个命令进行介绍一下,具体可以查看相关手册。
百度百科:
nohup 命令
用途:LINUX命令用法,不挂断地运行命令。
语法:nohup Command [ Arg ... ] [ & ]
描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。
有了此命令,我们就可以在PHP_CLI模式下创建一个死循环,用来模拟一个守护进程。
1.创建文件daemon.php
/** *daemon.php */ <?php set_time_limit(0); while(1){ //run your code here.. } ?>
2.启动守护进程
nohup php -f daemon.php > log.php &
其中,log.php为日志文件,即在while循环中输出的信息,&表示脱离终端,放到后台执行
相关文章推荐
- [PHP学习教程 - 系统]002.模拟守护进程(Daemon)-程序永远在后台运行
- PHP模拟守护进程
- PHP模拟守护进程
- 用PHP实现守护进程任务后台运行与多线程(php-resque使用说明)
- 如何利用PHP做守护进程
- php在守护进程中,内存泄露用unset()解决办法
- php守护进程 加linux命令nohup实现任务每秒执行一次
- php守护进程,加linux命令nohup实现任务每秒执行一次
- PHP中利用pcntl实现多进程(模拟多线程)实例
- php两种实现守护进程的方式。
- PHP守护进程实例
- CentOS 下管理自定义 PHP 计划任务代码的守护进程脚本
- PHP使用守护进程处理队列
- PHP高级编程实例:编写守护进程
- php写守护进程(Daemon)
- php等守护进程监控脚本(转载 http://www.9958.pw/post/php_script_scan)
- php守护进程,加linux命令nohup实现任务每秒执行一次
- php开发一个守护进程
- PHP守护进程实例
- 用PHP做Linux/Unix下守护进程