Nginx的优化

作为真实服务器的优化

针对CPU的nginx 配置优化指令

worker_processes 指令是用来指定Nginx工作进程数

官方默认设为1,但是为了让多核CPU能够更好的处理并行任务,可以将该值设置大一些,最好这个值是机器CPU的倍数。

worker_cpu_affinity 指令用来为每个进程分配工作内核(CPU)。

这个指令的设置方法有些麻烦.我们这里遵循一个规则去设定,就可以很简单。规则:

cpu  有多少个核,就有几位数,1代表使用,0代表不使用。

来举个栗子,上面两个优化的结合:

    两核CPU,开启两个进程
    worker_processes 2;
    worker_cpu_affinity 01 10;

针对网络相关的配置指令

keepalive_timeout 用于设置Nginx服务器与客户端保持连接的超时时间
keepalive_timeout 参数1 参数2;

参数1指定客户端连接保持活动的超时时间,在这个时间之后,服务器会关闭此连接;

参数2指定了使用Keep-Alive 消息头保持存活的有效时间,如果不设置他,Nginx服务器不会向客户端发送Keep-Alive 消息头以保持与客户端某些浏览器(如Mozilla,Konqueror等)的连接。设置这个选项后,客户端就可以在超时时间后关闭连接,而不需要服务器关闭了。

举个栗子

keepalive_timeout 60 30;
如果客户端连接超过60S,服务器关闭此次连接;
客户端连接超过30S就关闭连接。
send_timeout 用于设置Nginx 服务器响应客户端的超时时间

这个超时时间仅针对客户端和服务器端建立连接之后,如果在指定的时间内,客户端没有收到任何内容,这个连接将会被断开。

client_header_buffer_size 用户设置Nginx 服务器允许的客户端请求头的缓冲区大小,默认是1KB。一般是:
client_header_buffer_size 4k;
Gzip 压缩指令

开启或者关闭Gzip功能, 默认指令设置为off, 即不启用Gzip功能。只有设置为on时,后续介绍的指令才会有效。

gzip on | off;

你可能感兴趣的:(Nginx的优化)