php判断linux下程序问题实例


Posted in PHP onJuly 09, 2015

本文实例讲述了php判断linux下程序问题。分享给大家供大家参考。具体如下:

有时候在服务器上面写一些脚本的时候,经常要放到crontab里面定时运行。时间长了就有一个问题,那就是程序重复运行消耗太多的资源,怎么处理呢?下面璞玉写了两种方法.

//第一种:用linux里面的正则匹配
function ifrun($clsname,$bf = 0)
{
  //下面进行检测,如有一个进程正在运行,则不运行
  $str=shell_exec("/bin/ps ax > /home/root/".$clsname."_run.txt");
  $str=shell_exec("/bin/grep -c '".$clsname.".php' /home/root/".$clsname."_run.txt");
  if($bf >0)
  {
    if($str >=$bf)
    {
      return 1;
    }
    else
    {
      return 0;
    }
  }
  else
  {
    if ($str>=2)
    {
      return 1;
    }
    else
    {
      return 0; 
    }
  }
}
//调用:
if (ifrun('pooy',5))
{
  die("pooy is running");
}
//备注:pooy是程序pooy.php的名称!
//第二种:把进程写到文件里面,然后用file函数去读取然后去匹配字符串
system('ps -ef |grep wget > /root/pooy.txt');
$arr=file('/root/pooy.txt');
$total=count($arr);
for($i=0;$i<$total;$i++){
 $count=array();
  if(stristr($arr[$i],'www/pooy') !== FALSE) {
  //echo '"earth" not found in string';
   $count[]='no';
   break;
 }
}
if(count($count) >= 1 )
{
  echo "A same programs are running";
  exit();
}else
{
  echo "start__________________________________________________";
}
//注:"www/pooy" 是程序里面包含的字符串!
//现在php程序在linux运行是否通畅多了呢?

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
PHP入门速成(2)
Oct 09 PHP
简单的移动设备检测PHP脚本代码
Feb 19 PHP
php下安装配置fckeditor编辑器的方法
Mar 02 PHP
PHP 如何利用phpexcel导入数据库
Aug 24 PHP
php生成缩略图示例代码分享(使用gd库实现)
Jan 20 PHP
PHP易混淆函数的区别及用法汇总
Nov 22 PHP
PHP中通过trigger_error触发PHP错误示例
Jun 23 PHP
php图片水印添加、压缩、剪切的封装类实现
Apr 18 PHP
[原创]ThinkPHP让../Public在模板不解析(直接输出)的方法
Oct 09 PHP
Thinkphp微信公众号支付接口
Aug 04 PHP
laravel5使用freetds连接sql server的方法
Dec 07 PHP
PHP sdk实现在线打包代码示例
Dec 09 PHP
php实现html标签闭合检测与修复方法
Jul 09 #PHP
php可扩展的验证类实例(可对邮件、手机号、URL等验证)
Jul 09 #PHP
php类常量用法实例分析
Jul 09 #PHP
php求一个网段开始与结束IP地址的方法
Jul 09 #PHP
PHP实现全角字符转为半角方法汇总
Jul 09 #PHP
php将金额数字转化为中文大写
Jul 09 #PHP
php实现的简易扫雷游戏实例
Jul 09 #PHP
You might like
php使用百度翻译api示例分享
2014/01/31 PHP
PHP使用星号替代用户名手机和邮箱的实现代码
2018/02/07 PHP
Yii2结合Workerman的websocket示例详解
2018/09/10 PHP
javascript 关于# 和 void的区别分析
2009/10/26 Javascript
jQuery 源码分析笔记(6) jQuery.data
2011/06/08 Javascript
JavaScript判断访问的来源是手机还是电脑,用的哪种浏览器
2013/12/12 Javascript
jQuery使用removeClass方法删除元素指定Class的方法
2015/03/26 Javascript
yui3的AOP(面向切面编程)和OOP(面向对象编程)
2015/05/01 Javascript
分享五个有用的jquery小技巧
2015/10/08 Javascript
Bootstrap每天必学之下拉菜单
2015/11/25 Javascript
JavaScript中eval函数的问题
2016/01/31 Javascript
JavaScript头像上传插件源码分享
2016/03/29 Javascript
JS+CSS实现闪烁字体效果代码
2016/04/05 Javascript
Node.js中npm常用命令大全
2016/06/09 Javascript
原生JS轮播图插件
2017/02/09 Javascript
详解nodejs操作mongodb数据库封装DB类
2017/04/10 NodeJs
webstorm添加vue.js支持的方法教程
2017/07/05 Javascript
JS实现数组去重,显示重复元素及个数的方法示例
2019/01/21 Javascript
Vue表单控件数据绑定方法详解
2020/02/05 Javascript
如何构建一个Vue插件并生成npm包
2020/10/26 Javascript
python 3.5下xadmin的使用及修复源码bug
2017/05/10 Python
python numpy函数中的linspace创建等差数列详解
2017/10/13 Python
Python使用numpy模块创建数组操作示例
2018/06/20 Python
python 3.3 下载固定链接文件并保存的方法
2018/12/18 Python
对python_discover方法遍历所有执行的用例详解
2019/02/13 Python
Python while循环使用else语句代码实例
2020/02/07 Python
python脚本实现mp4中的音频提取并保存在原目录
2020/02/27 Python
使用darknet框架的imagenet数据分类预训练操作
2020/07/07 Python
pycharm中使用request和Pytest进行接口测试的方法
2020/07/31 Python
在校学生职业规划范文
2014/01/08 职场文书
学校勤俭节约倡议书
2015/04/29 职场文书
关于空气污染危害的感想
2015/08/11 职场文书
2019七夕节祝福语36句,快来收藏吧
2019/08/06 职场文书
Python之基础函数案例详解
2021/08/30 Python
win11如何查看端口是否被占用? Win11查看端口是否占用的技巧
2022/04/05 数码科技
Win11远程连接不上怎么办?Win11远程桌面用不了的解决方法
2022/08/05 数码科技