如何分析php-cgi进程占用cpu资源过多负载高的原因

   服务器环境:redhat linux 5.5 , nginx , phpfastcgi

  在此环境下,一般php-cgi运行是非常稳定的,但也遇到过php-cgi占用太多cpu资源而导致服务器响应过慢,所遇到的php-cgi进程占用cpu资源过多的原因有:

  一些php的扩展与php版本兼容存在问题:实践证明 eAccelerater与某些php版本兼容存在问题,具体表现是启动php-cgi进程后,运行10多分钟,奇慢无比,但静态资源访问很快,服务器负载也很正常(说明nginx没有问题,而是php-cgi进程的问题),解决办法就是从php.ini中禁止掉eAccelerater模块,再重启php-cgi进程即可。

  程序中可能存在死循环,导致服务器负载超高(使用top指令查看负载高达100+), 需要借助Linux的proc虚拟文件系统找到具体的问题程序。

  php程序不合理使用session , 这个发生在开源微博记事狗程序上,具体表现是有少量php-cgi进程(不超过10个)的cpu使用率达98%以上, 服务器负载在4-8之间,这个问题的解决,仍然需要借助Linux的proc文件系统找出原因。

  程序中存在过度耗时且不可能完成的操作(还是程序的问题)。

时间: 2025-01-31 02:04:46

如何分析php-cgi进程占用cpu资源过多负载高的原因的相关文章

在LIUNX服务器上找出web项目中占用cpu资源最多的线程的排查方法

在这里对linux下.sun(oracle) JDK的线程资源占用问题的查找步骤做一个小结:linux环境下,当发现java进程占用CPU资源很高,且又要想更进一步查出哪一个java线程占用了CPU资源时,按照以下步骤进行查找: 第一步:登陆到web服务所在的liunx服务器,利用top命令获取java的cpu使用率 第二步: 如上图所示,java的进程id为'3260',接下来用top命令单独对这个进程中的所有线程作监视:top -p 3260 -H 第三步: 如上图所示,linux下,所有的

LINUX类主机JAVA应用程序占用CPU、内存过高分析手段

转载声明:本文为DBA+社群原创文章,转载必须连同本订阅号二维码全文转载,并注明作者名字及来源:DBA+社群(dbaplus).   做为一个IT运维人员,通常在运维过程中会遇到各种各样的问题,系统问题.应用问题.程序问题,而在这当中必然会涉及到性能问题,当用户量过大,或者服务器性能不足以支持大用户量,但同时又得不到扩容的情况下,进行性能分析,并对系统.应用.程序进行优化则显得尤为重要,同时也是节省资源的一种必不可少的手段,目前大多数的运维产品都是基于JAVA语言开发的,下面我给大家介绍一下在l

解决服务器w3wp.exe进程占用cpu和内存过多问题

最近公司服务器总出现CPU100%占用情况,服务器配置为双核Xeon3.0x2,2G ECC内存. 发现是w3wp.exe长时间占用大量CPU.出现这种情况应该是网站程序存在死循环等问题所致. 在找到问题以前可以暂时采取限制w3wp进程CPU使用率的方法保证网站可以将就着工作: 在IIS6下,经常出现w3wp.exe的内存及CPU占用不能及时释放,从而导致服务器响应速度很慢. 解决CPU占用过多: 1.在IIS中对每个网站进行单独的应用程序池配置.即互相之间不影响. 2.设置应用程序池的CPU监

如何结束占用cpu资源最多的程序

  如何结束占用cpu资源最多的程序 右键单击任务栏,在弹出的快捷菜单中选择"任务管理器"菜单. 在弹出的任务管理器界面中点击如下图红色箭头所示"进程"页签. 双击如下图红色箭头所示"CPU"列标题. 当点击完成后会发现该进程列表按照CPU的占用率进行了由大到小的排序. 选择占用CPU资源比较多的进程,然后点击结束进程按钮,操作完毕.

win7系统Svchost.exe占用cpu资源过高怎么办

win7系统Svchost.exe占用cpu资源过高的解决方法 先来看一下任务管理器下Svchost.exe占用了47%的CPU资源,在高的时候达到80%以上 我们首先右键点击任务栏空白处,然后在弹出菜单中选择"启动任务管理器"菜单项 在打开的任务管理器中点击"查看/选择列"菜单项 这时会打开选择进程页列窗口,选中最上面的"PID(进程标识符)"前的复选框 这时在任务管理器中就可以看到多了一个PID列,我们看到占用CPU资源高的Svchost.e

IIS6 w3wp.exe进程占用cpu和内存过多的解决方法

  今天有朋友问我他的服务器网站访问很卡,内存及CPU占用不能及时释放,从而导致服务器响应速度很慢,这里简单介绍下,方便需要的朋友 在IIS6下,经常出现w3wp.exe的内存及CPU占用不能及时释放,从而导致服务器响应速度很慢. 解决CPU占用过多: 1.在IIS中对每个网站进行单独的应用程序池配置.即互相之间不影响. 2.设置应用程序池的CPU监视,不超过25%(服务器为4CPU),每分钟刷新,超过限制时关闭. 根据w3wp取得是哪一个应用程序池: 1.在任务管理器中增加显示pid字段(任务

IIS6 w3wp.exe进程占用cpu和内存过多的解决方法_win服务器

在IIS6下,经常出现w3wp.exe的内存及CPU占用不能及时释放,从而导致服务器响应速度很慢. 解决CPU占用过多:1.在IIS中对每个网站进行单独的应用程序池配置.即互相之间不影响.2.设置应用程序池的CPU监视,不超过25%(服务器为4CPU),每分钟刷新,超过限制时关闭. 根据w3wp取得是哪一个应用程序池:1.在任务管理器中增加显示pid字段(任务管理器>查看>选择列>PID(进程标识符)).就可以看到占用内存或者cpu最高的进程pid. 2.在命令提示符下运行iisapp

解决IAStorDataMgrSvc.exe进程占用cpu过高

这个进程一般都是驱动程序版本有问题!别以为电脑都已经是装的最新版本的驱动了就觉得不会是这个问题,本人就是安装官方推荐的旧版本的驱动来覆盖本地的最新驱动,这问题才得以解决,现在想来应该是不知什么时候用驱动人生安装了新版本驱动 ,而该驱动版本刚好就有问题,吭爹吧,呵呵.... 推荐做法是去dell电脑官网下载推荐的驱动版本,如果下回来安装的驱动提示是否要用比较旧的版本覆盖安装本地较新的版本,果断选择是,安装完驱动 重启,若IAStorDataMgrSvc.exe进程占用cpu问题解决,则证明就是该进

Windows下进程占用CPU过大的解决方案

Windows下进程占用CPU过大 1.WMI Provider Host(wmiprvse.exe)占用CPU高         & &         >