您的位置:

phpcgi进程,phpcgi进程的 释放

本文目录一览:

502 Bad Gateway 怎么解决

502badgateway要先找到nginx配置的路径。

然后找到nginx所在的error日志文件来查看具体原因。

如果是客户端浏览器配置的问题,以360浏览器为例,出现502BadGateway可能是设置了代代理导致的。

取消浏览器代理之后,刷新一下就可以访问了。

502BadGateway是一种报错提示,这一错误并不意味着上游服务器已关闭(无响应网关/代理),而是上游服务器和网关/代理不同意的协议交换数据。

鉴于互联网协议是相当清楚的,它往往意味着一个或两个机器已不正确或不完全编程。

php_cgi进程并行处理问题

php_cgi进程并行处理会引发消耗cpu过多导致机器负责过高的问题。

解决方法是做出以下调整:

1. nginx少开两个进程:

user nobody nobody;

worker_processes 2;

worker_rlimit_nofile 51200;

2.调整php_cgi的子进程数:

/usr/local/nginx/sbin/spawn-fcgi -a 127.0.0.1 -p 1026 -C 12 -u nobody -f /usr/local/php-fcgi/bin/php-cgi

/usr/local/nginx/sbin/spawn-fcgi -a 127.0.0.1 -p 1027 -C 12 -u nobody -f /usr/local/php-fcgi/bin/php-cg

3.重启php_cgi和nginx发现效果不佳。查资料发现有可能eAccelerater模块不兼容。

4.修改/usr/local/php-fcgi/lib/php.ini 禁止eaccelerator模块 改为apc加速:

extension = "apc.so"

apc.enabled = 1

apc.cache_by_default = on

apc.shm_segments = 1

apc.shm_size = 128M

apc.ttl = 7200

apc.user_ttl = 7200

apc.num_files_hint = 1024

apc.write_lock = On

apc.gc_ttl=3600

apc.ttl=0

apc.mmap_file_mask=/tmp/apc.XXXXXX

5.重启nginx和php_cgi即可。

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

不要使用普通的CGI模式安装,每个PHP进程默认占128MB内存,几G内存也最多百来人访问就击垮了。

CGI模式是早期内部小网站的模式,现在一般用于开发时方便调试。

部署PHP应该使用FastCGI方式或者ISAPI方式安装,就不会产生多进程和资源占用过多。

服务器php-cgi.exe进程过多,导致CPU占用100%

你的现象一般有两种可能,一是PHP脚本问题,例如你在PHP脚本后面写一个按回车结束,然后从标准输入读数据,可能会造成阻塞,使得进程无法结束。进行测试的方法的是写一个最简单的PHP脚本(例如只有phpinfo();一行),然后不断用浏览器打开这个页面,如果CGI进程也在增加,那么说明是下面一种情况。

另外一种情况是PHP版本安装不对,在WINDOWS下用CGI方式工作,不要安装“线程安全”版本,应该安装“非线程安全”的版本,否则会出现你的情况。

php php-cgi.exe进程多

肯定是有的程序写得有问题,正常情况下如果有人用浏览器打开的你PHP网页,你就会开一个cgi进程,但是网页显示完毕cgi进程就应该关闭了,那么只要每个网页程序的效果很高(都在几毫秒执行完毕),那么几乎是看不见cgi进程的,哪怕有许多人不停的访问你的网页。

在cgi进程多的时候,在进程管理器里面设置显示“命令行”,看看是哪个页面的代码有问题,优化一下。