不知不觉网站PV就爆发了。nginx压力越来越大,一些默认参数就显得不够用了。
我们的主服务器硬件配置非常健壮(双路至强5620 + 48GB内存 + SSD),理论上可以承受每天过500万的PV,当然,前提是优化得够好。
简单罗列一下优化过的几个参数:
- ulimit -n 65535这个参数位于/etc/default/nginx 中,或者/etc/init.d/nginx 文件中直接设置。
默认是1024,意思是最多打开的文件个数。1024怎么够,至少开到8192,网上很多文章都直接开到了65535。
- worker_processes 8;
worker数量,位于nginx.conf头部,一般来说有几个cpu核心开几个,不算超线程。 - worker_rlimit_nofile 65535;
位于nginx.conf头部,也是文件数量限制,直接开大吧。 - worker_connections 4096;
位于nginx.conf中,默认是1024,也不够。 - 另外,建议编译nginx的时候顺带编译status模块,以便监视性能。
location /status/ {
stub_status on;
}
小小炫耀一下服务器的status参数,想当年刚用nginx的时候,Writing参数不是0就是1,现在已经这么大了:
Active connections: 2140 server accepts handled requests 14727928 14727602 24524267 Reading: 92 Writing: 28 Waiting: 2020
Related posts: