php-cgi消耗cpu过多导致机器负责过高

简述:机器为一台虚拟机 两个%ignore_a_1%(Intel(R) Xeon(R) CPU           E5410  @ 2.33GHz)、2G内存。

     并发小于3w。用一台机器应该足以抗住。

配置:nginx 1.06 + php_cgi (PHP 5.2.13) +mysql (5.1.42-log MySQL Community Server)

1.问题截图:php_cgi消耗cpu过高导致机器很卡 查看内存也不足。

php-cgi消耗cpu过多导致机器负责过高

2.做出调整:

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-cgi

3.重启php_cgi和nginx发现效果 不佳。查资料发现有可能eAccelerater模块不兼容,(http://zhangxugg-163-com.iteye.com/blog/873378)

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

 

[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

 

[root@hj sbin]# cat restart.sh
#!/bin/sh
killall -9 nginx
killall -9 php-cgi
ulimit -HSn 655350
ulimit -a
sleep 3
/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-cgi
/usr/local/nginx/sbin/nginx

6.效果图:

php-cgi消耗cpu过多导致机器负责过高

文章版权声明

 1 原创文章作者:ARK-16,如若转载,请注明出处: https://www.52hwl.com/33860.html

 2 温馨提示:软件侵权请联系469472785#qq.com(三天内删除相关链接)资源失效请留言反馈

 3 下载提示:如遇蓝奏云无法访问,请修改lanzous(把s修改成x)

 免责声明:本站为个人博客,所有软件信息均来自网络 修改版软件,加群广告提示为修改者自留,非本站信息,注意鉴别

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023年7月15日
下一篇 2023年7月15日