繁体中文
设为首页
加入收藏
当前位置:网络编程首页 >> php >> 关于/proc/loadavg 和 php 开发

关于/proc/loadavg 和 php 开发

2008-03-22 22:57:20  作者:  来源:互联网  浏览次数:25  文字大小:【】【】【
简介: 该文件显示了系统当前的平均负载和进程状况。 0.20 0.18 0.12 1/80 11206 前三列分别为前1分钟、5分钟、15分钟内的平均负载。第四列为正在执行的进程数和系统的总进程数。第五列为上次执行的进程id。 --- ...

该文件显示了系统当前的平均负载和进程状况。

 0.20 0.18 0.12 1/80 11206

前三列分别为前1分钟、5分钟、15分钟内的平均负载。第四列为正在执行的进程数和系统的总进程数。第五列为上次执行的进程id。

-----------------------------------------------------------------


该文件中的所有值都是从系统启动开始累计到当前时刻。该文件只给出了所有CPU的集合信息,不能该出每个CPU的信息。

[root@localhost ~]# cat /proc/loadavg
4.61 4.36 4.15 9/84 5662

每个值的含义为:
参数 解释
lavg_1 (4.61) 过去1分钟平均负载
lavg_5 (4.36) 过去5分钟平均负载
lavg_15(4.15) 过去15分钟平均负载
nr_running (9) 在采样时刻,运行队列的任务的数目,与/proc/stat的procs_running表示相同意思
nr_threads (84) 在采样时刻,系统中活跃的任务的个数(不包括运行已经结束的任务)
last_pid(5662) 最大的pid值,包括轻量级进程,即线程。

假设当前有两个CPU,则每个CPU的当前任务数为4.61/2=2.31
----------------------
php中的用法:
if(!empty($loadctrl) && substr(PHP_OS, 0, 3) != 'WIN') {
 if($fp = @fopen('/proc/loadavg', 'r')) {
  list($loadaverage) = explode(' ', fread($fp, 6));
  fclose($fp);
  if($loadaverage > $loadctrl) {
   header("HTTP/1.0 503 Service Unavailable");
   include DISCUZ_ROOT.'./include/serverbusy.htm';
   exit();
  }
 }
}

责任编辑:探索者


相关文章
 

最新文章

更多

· php教程:mysql的常用语句
· PHP教程:cookie和数组的...
· PHP创建windows服务并自...
· PHP技巧教程:setcookie...
· 可以在读者复制网页内容...
· 高亮显示php代码
· PHP加速器 eaccelerator...
· ffmpeg+mencoder环境搭建...
· ffmpeg的编译大全
· Ffmpeg使用语法

推荐文章

更多

· php教程:mysql的常用语句
· PHP教程:cookie和数组的...
· PHP创建windows服务并自...
· PHP技巧教程:setcookie...
· 可以在读者复制网页内容...
· 高亮显示php代码
· PHP加速器 eaccelerator...
· ffmpeg+mencoder环境搭建...
· ffmpeg的编译大全
· Ffmpeg使用语法

热点文章

更多