45fan.com - 路饭网

搜索: 您的位置主页 > 电脑频道 > 编程代码 > 阅读资讯:优化php程序在linux的运行效率和提高运行通畅性

优化php程序在linux的运行效率和提高运行通畅性

2015-07-27 04:43:56 来源:www.45fan.com 【

优化php程序在linux的运行效率和提高运行通畅性

本文实例讲述了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程序设计有所帮助。


本文地址:http://www.45fan.com/bcdm/15777.html
Tags: linux PHP 判断
编辑:路饭网
推广内容
推荐阅读
热门推荐
推荐文章
关于我们 | 联系我们 | 友情链接 | 网站地图 | Sitemap | App | 返回顶部