首页 > 代码库 > nginx + php-fpm 高并发配置 (也包括一部分apache/httpd)

nginx + php-fpm 高并发配置 (也包括一部分apache/httpd)

fpm用的php.ini下 (/etc/php5/fpm/php.ini),很重要,不改会有安全漏洞。

cgi.fix_pathinfo=0

 

去掉防syn flood攻击 (高并发下会主动堵塞apache请求 导致ab测试下 apr_socket_recv: Connection reset by peer (104))

参考: http://xmarker.blog.163.com/blog/static/226484057201462263815783/

vi /etc/sysctl.conf

net.ipv4.tcp_syncookies=0

 

看ulimit数

ulimit -Sn

 

ulimit加到30000+

如何修改自行百度,不同linux发行版貌似不一样

 

nginx.conf下修改

worker_processes 12;

worker_rlimit_nofile 100000;

events { 

  use epoll; 

  worker_connections 65535; 

}

 

php-fpm的sock模式是不可靠的,并发一高就会崩。

 

php-fpm.conf (or www.conf)

改成listen = 127.0.0.1:9000, 不要用listen = /var/run/php5-fpm.sock

process.max = 65536 (这个似乎没用)

pm下4个,改大一点,按照一个进程占30M内存计算。

pm.max_requests = 50000 (这个似乎也没用)

 

nginx web server配置下选择

fastcgi_pass 127.0.0.1:9000;

 

nginx + php-fpm 高并发配置 (也包括一部分apache/httpd)