用php守护另一个php进程的例子


Posted in PHP onFebruary 13, 2015

要用php守护另一个php进程(apache模块的运行的,还有nginx等运行的除外)
a.php要守护b.php

在b.php中 通过 getmypid()函数获取当前进程的id,并将id写入c.pid文件中,如果程序执行完成将c.pid文件删除或清空

在a.php中 验证c.pid是否存在 ,是否为空,如果不为空,将pid读出,通过exec执行 ps -p pid|grep 文件名来判断是否运行,判断后执行相应操作

可能有人要问,为什么不直接 ps aux|grep 文件名,这里主要是考虑到文件重名的情况下会出问题

a.php 代码

<?

$id=intval($argv[1]);

if(!file_exists(‘pid'.$id.'.pid')){

echo “not run”;

exit;

}

$content=file_get_contents(‘pid'.$id.'.pid');

if(empty($content)){

echo “not run”;

exit;

}

exec(“ps p “.$content.'|grep b.php',$pids);

if(count($pids)>0) echo(‘runing');

else{echo ‘not run';}

?>

b.php代码
<?
$id=intval($argv[1]);

if(empty($id))exit;

file_put_contents(‘pid'.$id.'.pid',getmypid());

while(1){

file_put_contents(‘pid'.$id.'.pid',getmypid());

sleep(100);

}

?>
PHP 相关文章推荐
第四节 构造函数和析构函数 [4]
Oct 09 PHP
php 什么是PEAR?(第三篇)
Mar 19 PHP
PHP clearstatcache()函数详解
Mar 02 PHP
PHP遍历文件夹与文件类及处理类用法实例
Sep 23 PHP
PHP判断数据库中的记录是否存在的方法
Nov 14 PHP
php操作xml入门之cdata区段
Jan 23 PHP
php编写简单的文章发布程序
Jun 18 PHP
php检查页面是否被百度收录
Oct 28 PHP
PHP编程入门的基本语法知识点总结
Jan 26 PHP
将PHP程序中返回的JSON格式数据用gzip压缩输出的方法
Mar 03 PHP
yii2.0整合阿里云oss上传单个文件的示例
Sep 19 PHP
浅谈laravel orm 中的一对多关系 hasMany
Oct 21 PHP
cakephp打印sql语句的方法
Feb 13 #PHP
php 使用array函数实现分页
Feb 13 #PHP
php生成RSS订阅的方法
Feb 13 #PHP
linux下实现定时执行php脚本
Feb 13 #PHP
浅谈php自定义错误日志
Feb 13 #PHP
PHP 5.3和PHP 5.4出现FastCGI Error解决方法
Feb 12 #PHP
php制作动态随机验证码
Feb 12 #PHP
You might like
发布一个迷你php+AJAX聊天程序[聊天室]提供下载
2007/07/21 PHP
php函数指定默认值方法的小例子
2013/12/04 PHP
CodeIgniter框架URL路由总结
2014/09/03 PHP
Kindeditor编辑器添加图片上传水印功能(php代码)
2017/08/03 PHP
jquery.validate使用攻略 第三部
2010/07/01 Javascript
Jquery实现显示和隐藏的4种简单方式
2013/08/28 Javascript
JS实现表单多文件上传样式美化支持选中文件后删除相关项
2016/09/30 Javascript
angular2倒计时组件使用详解
2017/01/12 Javascript
vue实现移动端图片上传功能
2019/12/23 Javascript
探究Python的Tornado框架对子域名和泛域名的支持
2015/05/02 Python
分析用Python脚本关闭文件操作的机制
2015/06/28 Python
python中Apriori算法实现讲解
2017/12/10 Python
Python实现Kmeans聚类算法
2020/06/10 Python
python自动登录12306并自动点击验证码完成登录的实现源代码
2018/04/25 Python
解决安装tensorflow遇到无法卸载numpy 1.8.0rc1的问题
2018/06/13 Python
python excel转换csv代码实例
2019/08/26 Python
解决Tensorflow占用GPU显存问题
2020/02/03 Python
Windows系统下pycharm中的pip换源
2020/02/23 Python
python rolling regression. 使用 Python 实现滚动回归操作
2020/06/08 Python
HTML5 用动画的表现形式装载图像
2016/03/08 HTML / CSS
为娇小女性量身打造:Petite Studio
2018/11/01 全球购物
linux下进程间通信的方式
2014/12/23 面试题
护士个人简历自荐信
2013/10/18 职场文书
本科生求职简历的自我评价
2013/10/21 职场文书
保险专业大专生求职信
2013/10/26 职场文书
3D空间设计学生找工作的自我评价
2013/10/28 职场文书
人力资源部副职的竞聘演讲稿
2014/01/07 职场文书
教师个人剖析材料
2014/02/05 职场文书
英文感谢信范文
2015/01/21 职场文书
工作失职自我检讨书
2015/05/05 职场文书
2015年卫生院健康教育工作总结
2015/07/24 职场文书
如何书写民事调解协议书?
2019/06/25 职场文书
《岳阳楼记》原文、译文赏析
2019/09/10 职场文书
关于Python使用turtle库画任意图的问题
2022/04/01 Python
Java实现带图形界面的聊天程序
2022/06/10 Java/Android
Elasticsearch6.2服务器升配后的bug(避坑指南)
2022/09/23 Servers