Nginx优化(配置文件)

  1. worker_processes 8

nginx进程数,建议按照cpu数目来指定,一般为它的倍数(如:2个4核的cpu计为8)

  1. worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;

为每个进程分配cpu,将上例8个进程分配到8个cpu

  1. worker_rlimit_nofile 65535;

nginx进程打开的最多文件描述符数目,最好与ulimit -n 的值保持一致

  1. use epoll;

使用epoll的I/O模型
(
补充说明:
与apache相类,nginx针对不同的操作系统,有不同的事件模型
A)标准事件模型
Select、poll属于标准事件模型,如果当前系统不存在更有效的方法,nginx会选择select或poll
B)高效事件模型
Kqueue:使用于 FreeBSD 4.1+, OpenBSD 2.9+, NetBSD 2.0 和 MacOS X. 使用双处理器的MacOS X系统使用kqueue可能会造成内核崩溃。
Epoll: 使用于Linux内核2.6版本及以后的系统。
/dev/poll:使用于 Solaris 7 11/99+, HP/UX 11.22+ (eventport), IRIX 6.5.15+ 和 Tru64 UNIX 5.1A+。
Eventport:使用于 Solaris 10. 为了防止出现内核崩溃的问题, 有必要安装安全补丁。
)

  1. worker_connections 65535;
    每个进程允许的最多连接数,理论上每台nginx服务器的最大连接数为:
    worker_processes*worker_connections

  2. keepalived_timeout 60;
    keepalived超时时间

  3. client_neader_buffer_size 4k;
    客户端请求头部的缓冲区大小,这个可以根据你的系统分页大小来设置
    分页大小可以用命令getconf PAGESIZE取得
    (也有client_header_buffer_size超过4k的情况,但是该值必须为“系统分页大小”的整倍数)

  4. open_file_cache max=65535 inactive=60s
    这个将为打开文件指定缓存,默认是关闭的
    max指定缓存数量,建议和打开文件数一致
    inactive是指多长时间文件没有被请求后删除缓存

  5. open_file_cache_valid 80s
    这个是指多长时间检查一次缓存的有效信息

  6. open_file_cache_min_uses 1;
    open_file_cache 指令中的inactive 参数时间内文件的最少使用次数
    如果超过这个数字,文件描述符一直是在缓存中打开的
    如上例,如果有一个文件在inactive 时间内一次没被使用,它将被移除。

你可能感兴趣的:(Nginx优化(配置文件))