Nginx个人调优见解

在网上参考大部分文章及自己动手做实验搭建相关环境,并且用工具测试过并发后总结以下Nginx调优项,纯属个人见解,如有不正确之处欢迎大神帮忙指出,万分感谢。

硬件

  • 预算足够的前提下,增加服务器,分担负载

  • 预算足够的话再增加内存

Nginx配置文件调优

  • 用ulimit -a查看系统参数可发现以下一项:
open files (-n) 1024  #表示系统同时最多能打开的文件数,linux下的所有设备都可以认为是文件,包括网络连接,如果同时超过1024个连接,那么nginx的日志就会报“24: Too many open files”所以修改/etc/profile,增加以下内容
ulimit -n 65535
  • worker进程连接数优化(Worker Connections)

    默认情况下这个值是worker_connections 1024,普通网站默认值就可以了,如果你的流量一直提升,可以考虑增加这个值为2048或者更高。

  worker_connections 1024  #根据需要调整数值
  • Keep Alive

    Keep alive 没有数据传输的情况下保持客户端和服务端的连接,也就是保持空连接一段时间,避免重现建立链接的时间消耗。nginx处理空连接的效率非常高,1万个空连接大约消耗2.5M内存。如果流量非常大的网站,减少建立连接的时间开销是非常客观的。keep alive的值设置在10-20s之间比较合理。

  keepalive_timeout 10-20  #推荐10S-20S之间
  • Buffers size优化
    buffer的大小是调优最重要的参数。如果buffer size太小就会到导致nginx使用临时文件存储response,这会引起磁盘读写IO,流量越大问题越明显。
  client_body_buffer_size 256k  #默认256k,可根据需要作调整
  • 网络IO
    假设没有了磁盘IO,所有数据都在内存,那么读IO大概有3-6gbps。这种情况下,如果网络差,一样会很慢。所以尽可能提高网络带宽,压缩传输数据。网络带宽尽可能增大,nginx的gzip模块可以用来压缩传输数据,通常gzip_comp_level 设为 4-5,再高就是浪费cpu。
  gzip_comp_level 5

如文章对您有帮助,请打开支付宝扫码领取红包,就当做对作者的支持,谢谢
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Benson_xuhb

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值