IT技术博客大学习 共学习 共进步

重负荷nginx的几个关键配置参数

沈二铺子 2012-03-04 17:52:57 浏览 3,822 次

    不知不觉网站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

    建议继续学习

    1. 配置Nginx+uwsgi更方便地部署python应用 (阅读 106,824)
    2. 搜狐闪电邮箱的 Nginx/Postfix 使用模式 (阅读 33,762)
    3. 解析nginx负载均衡 (阅读 16,423)
    4. Nginx模块开发入门 (阅读 11,042)
    5. 检查nginx配置,重载配置以及重启的方法 (阅读 10,684)
    6. Cacti 添加 Nginx 监控 (阅读 10,363)
    7. Nginx+FastCgi+Php 的工作机制 (阅读 10,084)
    8. 奇怪的 Nginx 的 upstream timed out 引起响应 502 (阅读 9,823)
    9. nginx的配置文件 (阅读 9,785)
    10. 解决 nginx 反向代理网页首尾出现神秘字符的问题 (阅读 8,963)