zoukankan      html  css  js  c++  java
  • 转自http://bbs.linuxtone.org/thread106211.html

    详细参考:http://wiki.codemongers.com/NginxChsHttpMainModule

    worker_processes指明了nginx要开启的进程数,据官方说法,一般开一个就够了,多开几个,可以减少机器io带来的影响。

    据实践表明,nginx的这个参数在一般情况下开4个或8个就可以了,再往上开的话优化不太大。据另一种说法是,nginx开启太多的进程,会影响主进程调度,所以占用的cpu会增高,这个说法我个人没有证实,估计他们是开了一两百个进程来对比的吧。

    worker_processes配置的一些注意事项:

    1、worker_cpu_affinity配置最好是能写上

    我这里服务器多数是双核超线程,相当于4cpu,我一般开8进程,所以这个配置就是这样:

    worker_cpu_affinity 0001 0100 1000 0010 0001 0100 1000 0010;

    另,worker_cpu_affinity不是什么时候都能用的,我没有认真研究并罗列所有情况,只知道2.4内核的机器用不了,如果用不了的话,那么最好是加大worker_processes进程数,这样分配cpu就会平均一点啦,如果不平均只好多重启几下。

    2、worker_rlimit_nofile配置要和系统的单进程打开文件数一致,千万不要再画蛇添足地除以worker_processes。

    我现在在linux 2.6内核下开启文件打开数为65535,worker_rlimit_nofile就相应应该填写65535。

    这是因为nginx调度时分配请求到进程并不是那么的均衡,所以假如填写10240,总并发量达到3-4万时就有进程可能超过10240了,这时会返回502错误。

  • 相关阅读:
    关于MD5的个人笔记
    QueryString 页面传值方法
    酒店管理系统房态图的效果制作
    开始我的学习之路
    SQL取数据库名,取表名,取列名
    鼠标/键盘事件
    C#皮肤使用例子.
    C#调用WIN API
    C#中定时器的使用方法
    C#随机点名程序例子(名字由配置文件提供)
  • 原文地址:https://www.cnblogs.com/weiji100/p/3578105.html
Copyright © 2011-2022 走看看