Nginx性能调优
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx性能调优相关的知识,希望对你有一定的参考价值。
nginx性能调优
优化配置文档:nginx.conf,默认路径是/usr/local/nginx/conf/nginx.conf
性能调优步骤:
(1)worker_processes 8
定义了nginx对外提供WEB服务时的worker进程数,最优值取决于许多因素,包括CPU核的数量、存储数据的硬盘数量及负载模式等。建议按照CPU的数量来指定,比如有8个CPU,可以写成worker_processes 8,为每个进程分配8个CPU
worker_cpu_affinity 00000001 00000010 0000010000001000 00010000 00100000 01000000 10000000;
(2)worker_rlimit_nofile 65535
nginx进程打开最多文件描述符数目,与ulimit -n的值保持一致就好
(3)useepoll
epoll是多路复用IO中的一种方式,应用于linux2.6以上内核,可以大大提高nginx的性能。
(4)worker_connections102400
每个进程允许的最多连接数,最大连接数=连接数*进程数
(5)keepalive_timeout90
keepalive超时时间,客户端到服务器端的连接持续有效时间,当出现对服务器的后继请求时,keeplive-timeout功能可避免建立或重新建立连接,节省服务器资源、CPU、内存、网卡。服务器在这个超时时间后会关闭链接,我们将它设置低些可以让nginx持续工作时间更长,一般不超过120秒。
(6)gzip on;
gzip_min_length 1k;
gzip_buffers416k;
gzip_http_version 1.1;
gzip_comp_level 4:
开启gzip压缩,nginx可以采用gzip压缩的形式发送数量,减少我们发送的数据量。并修改压缩级别大小,最大为9,值越小,压缩后比例越小,CPU处理更快,级别设置为4最适宜。
(7)proxy_connect_timeout60; #nginx跟后端服务器连接超时时间(代理连接超时)
proxy_send_timeout60;#后端服务器数据回传时间(代理发送超时)
proxy_read_timeout 60;#连接成功后,后端服务器响应时间(代理接收超时)
把与后端服务连接的超时时间设置小些,让nginx的持续工作的时间更长
(8)open_file_cache max=65535 inactive=60s
这个将为文件制定缓存,默认是没有启动的,max指定缓存数量,建议和打开文件数一致,inactive是指经过多长时间文件没被请求后删除缓存。
(9)open_file_cache_valid 80s
这个是指多长时间检查一次缓存的有效信息。
(10)open_file_cache_min_uses 1
open_file_cache指令中的inactive参数时间内文件的最少使用次数,如果超过这个数字,文件描述符一直是在缓存中打开的,如果有一个文件在Inactive时间内一次没被使用,它将被移除。
本文出自 “蜡笔xiao馨” 博客,谢绝转载!
以上是关于Nginx性能调优的主要内容,如果未能解决你的问题,请参考以下文章