这三种筹划都是用于精华存放入memcache或者Redis的,大年夜而让Nginx支撑分布式缓存,并且对于缓存存储不受Nginx本地存储的影响。
- net.ipv4.tcp_slow_start_after_idle
这个参数是禁用TCP慢启动的,当然如不雅应用CentOS 6的用户建议将版本进级到6.5以及6.5今后的版本,这个参数设备才有意义,低于6.5的版本,须要做些特别设备才可以。
其它留意事项
1、net.ipv4.tcp_mem没事别瞎改,体系主动计算,别吃饱撑着!
2、fs.file-max没事别瞎改,内核根据内存大年夜小主动计算,表示kernel可分派的最大年夜文件句柄数,这个参数的大年夜小简单的来说袈浼等于cat /proc/meminfo|grep MemTotal的大年夜小乘以10%,精确的计算可以在我博客查看。
3、fs.nr_open可以修改,此为单个过程可分派的最大年夜文件句柄数,默认是为1024*1024
4、以下三个参数在Nginx没有启用SO_TCPKEEPALIVE特点时,根本不会生效,且启用SO_TCPKEEPALIVE特点的参数,不是keepalive_timeout!
- net.ipv4.tcp_keepalive_time
- net.ipv4.tcp_keepalive_probes
- net.ipv4.tcp_keepalive_intvl
HTTP Keep-Alive与TCP Keepalive是两个不合的概念,简单说前者是复竽暌姑一个TCP连接,后者用于TCP连接的链路探活。
关于HTTP Keep-Alive与TCP Keepalive我博客近期会宣布一片文┞仿,经由过程wireshark抓包来详解。
5、net.ipv4.tcp_max_orphans不要设置过大年夜,一个孤儿连接要占用64K的弗成交换内存,网上动辄这个值设备个几百万,吼吼,为内存认为担心。
6、net.ipv4.tcp_max_tw_buckets没事别设置几万几十万的,这个参数是TW的连接跨越这个设置时在/var/log/messages中打印警告信息,同时释放TW连接,可以设置小一点,当体系中TW太多时,net.ipv4.tcp_tw_recycle和net.ipv4.tcp_tw_reuse两个参数并没有卵用,所以TW连接过大年夜的可以直接暴力的将net.ipv4.tcp_max_tw_buckets设置为0,并没有什愦问题,当然最终解决照样要依附法度榜样和对Nginx的设备以及从新编译内核,削减TW连接的产生。
7、rmem和wmem可根据netstat –s|grep socket的结不雅来断定是否足够,出现类似以下信息时就要推敲增长对应的大年夜小了。
269651 packets pruned from receive queue because of socket buffer overrun
这三个参数一般建议都设备为0,高并发时tw连接想快速收受接收及复竽暌姑照样呵呵吧。
5346082 packets collapsed in receive queue due to low socket buffer
Nginx层面
1、安装优化
安装优化重要针对Nginx的编译安装,这里包含两个部分,一是针对编译器的编译参数优化,二是经由过程Nginx的应用处景来定制化Nginx的编译选项。以下经由过程Nginx最为静态资本办事器的案例来抛砖引玉地说下Nginx安装的优化:
起重要肯定Nginx是针对哪类静态资本做办事,例如供给js、css以及jpg、png等资本的拜访,照样针对MP3、MP4、RMVB、zip、rar等大年夜文件的资本拜访。这两种静态资本的场景应用对Nginx的编译参数照样有很大年夜影响的。js\css\jpg等这类静态资本一般文件都是比较小的,作为互联网公司一般文件的平均大年夜小不会跨越4M,所以一般编译时是不须要将–with-threads编译进去,而后者这种文件动辄都邑跨越10M的静态资本,一般就须要将–with-threads开启了,以便应用Nginx的线程池来晋升文件传输的机能。
其次,作为静态资本办事器,大年夜部分的模块是应用不到的,能应用到的模块有ssl模块、http v2模块,所以编译Nginx的参数就变成下面如许了:
- ./configure –prefix=/opt/websuite/nginx \
- –conf-path=/opt/config/nginx/nginx.conf \
- –modules-path=/opt/websuite/nginx/modules \
- –error-log-path=/opt/logs/nginx/error.log \
- –http-log-path=/opt/logs/nginx/access.log \
- –pid-path=/opt/run/nginx –user=websuite \
- –group=websuite \
- –with-file-aio \
推荐阅读
Tech Neo技巧沙龙 | 11月25号,九州云/ZStack与您一路商量云时代收集界线治理实践 企业收集体系遭受恶意进击事>>>详细阅读
本文标题:应用场景深度解析:Nignx性能优化指南
地址:http://www.17bianji.com/lsqh/39182.html
1/2 1