本文目录一览:
- 1、cgi/fastcgi占用率高
- 2、服务器php-cgi.exe进程过多,导致CPU占用100%
- 3、php-cgi进程太多,导致物理内存过高怎么办,有办法自动关闭销毁无用cgi进程吗?
- 4、502 Bad Gateway 怎么解决
- 5、如何分析php-cgi进程占用cpu资源过多负载高的原因
- 6、几个PHP-CGI进程导致服务器CPU占用率过高,求教如何解决。
cgi/fastcgi占用率高
在web服务器配置中优化fastcgi配置文件参数。
php-cgi进程并没有内存泄漏,php-cgi会在每个请求结束的时候回收脚本使用的全部内存,但是并不会释放给操作系统,而是继续持有以应对下一次PHP请求。这样做大概是为了减少内存碎片化或者解决从系统申请内存之后又释放回操作系统所需要的时间不可控问题。可是如果偶然一次PHP请求使用了诸如ftp或者zlib这样的大内存操作,那么将导致一大块系统内存被php-cgi持续占有,不能被利用。
服务器php-cgi.exe进程过多,导致CPU占用100%
你的现象一般有两种可能,一是PHP脚本问题,例如你在PHP脚本后面写一个按回车结束,然后从标准输入读数据,可能会造成阻塞,使得进程无法结束。进行测试的方法的是写一个最简单的PHP脚本(例如只有phpinfo();一行),然后不断用浏览器打开这个页面,如果CGI进程也在增加,那么说明是下面一种情况。
另外一种情况是PHP版本安装不对,在WINDOWS下用CGI方式工作,不要安装“线程安全”版本,应该安装“非线程安全”的版本,否则会出现你的情况。
php-cgi进程太多,导致物理内存过高怎么办,有办法自动关闭销毁无用cgi进程吗?
可以设置下php的线程数量,增加php使用内存,降低php的线程时间,不过访问量大的话,总内存还是不会降的。
502 Bad Gateway 怎么解决
502badgateway要先找到nginx配置的路径。
然后找到nginx所在的error日志文件来查看具体原因。
如果是客户端浏览器配置的问题,以360浏览器为例,出现502BadGateway可能是设置了代代理导致的。
取消浏览器代理之后,刷新一下就可以访问了。
502BadGateway是一种报错提示,这一错误并不意味着上游服务器已关闭(无响应网关/代理),而是上游服务器和网关/代理不同意的协议交换数据。
鉴于互联网协议是相当清楚的,它往往意味着一个或两个机器已不正确或不完全编程。
如何分析php-cgi进程占用cpu资源过多负载高的原因
不要使用普通的CGI模式安装,每个PHP进程默认占128MB内存,几G内存也最多百来人访问就击垮了。
CGI模式是早期内部小网站的模式,现在一般用于开发时方便调试。
部署PHP应该使用FastCGI方式或者ISAPI方式安装,就不会产生多进程和资源占用过多。
几个PHP-CGI进程导致服务器CPU占用率过高,求教如何解决。
安装zend studio 5 时自带了一个 php环境 zend core,zend core 在windows下是以fastcgi方法运行的。开启ZendCoreApache服务后,会启动 8个 php-cgi.exe过程,每个占内存 5 mb。 作为开发调试应用,没有必要开这么多过程,那么我们可以通过修正配置文件的方法来对其进行把持,具体方法如下: 修正配置文件C:\Program Files\Zend\Core\etc\fastcgi.conf 将 StartProcesses="8" 改为 StartProcesses="2" 即可。 还有最重要的,分给我