Nginx配置调优

全局模块下的调优

worker_processes

打开 nginx.conf 配置文件,可以看到 worker_processes 的默认值为 1。
在这里插入图片描述

worker_processes,工作进程,用于指定 Nginx 的工作进程数量。其数值一般设置为 CPU内核数量,或内核数量的整数倍。不过需要注意,该值不仅仅取决于 CPU 内核数量,还与硬盘数量及负载均衡模式相关。在不确定时可以指定其值为 auto。
在这里插入图片描述

worker_cpu_affinity

worker 进程与具体的内核进行绑定。不过,若指定worker_processes 的值为 auto,则无法设置worker_cpu_affinity。
在这里插入图片描述

该设置是通过二进制进行的。每个内核使用一个二进制位表示,0 代表内核关闭,1 代表内核开启。也就是说,有几个内核,就需要使用几个二进制位。
在这里插入图片描述

worker_rlimit_nofile

用于设置一个 worker 进程所能打开的最多文件数量。其默认值与当前 Linux 系统可以打开的最大文件描述符数量相同。
在这里插入图片描述

events 模块下的调优

worker_connections

设置每一个 worker 进程可以并发处理的最大连接数。该值不能超过 worker_rlimit_nofile的值。

accept_mutex

on:默认值,表示当一个新连接到达时,那些没有处于工作状态的 worker 将以串行方式来处理;
off:表示当一个新连接到达时,所有的 worker 都会被唤醒,不过只有一个 worker 能获取新连接,其它的 worker 会重新进入阻塞状态,这就是“惊群”现象。
举个例子来说,假如有1000个小盆友在操场,这时你有一个玩具,当on时相当于你拽过来一个小朋友把玩具给他。OFF时相当于你把玩具放在那里让小盆友抢,谁抢到谁来玩,这个时候OFF会很乱且没有效率,但是如果有200个玩具呢,轮流拽小朋友发效率就低了,不如让他们抢。同理,当Nginx访问量小的时候on效率是比较高的,但是当访问量很大的时候off效率较高,这没有一个很标准的界定,需要不断地压测来测试。

accept_mutex_delay

设置队首 worker 会尝试获取互斥锁的时间间隔。默认值为 500 毫秒。

multi_accept

off:系统会逐个拿出新连接按照负载均衡策略,将其分配给当前处理连接个数最少worker。
on:系统会实时的统计出各个 worker 当前正在处理的连接个数,然后会按照“缺编”最多的 worker 的“缺编”数量,一次性将这么多的新连接分配给该 worker。
同样这没有一个很标准的界定,需要不断地压测来测试

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
对于nginx配置调优,有几个关键的方面可以考虑: 1. 调整worker_processes和worker_connections:根据服务器的硬件配置和负载情况,可以适当调整worker_processes参数来提高并发处理能力。同时,根据系统资源情况,调整worker_connections参数来控制每个worker进程可处理的最大连接数。 2. 调整keepalive_timeout和keepalive_requests:通过适当调整这两个参数,可以优化长连接的管理。keepalive_timeout定义了一个持久连接的最大空闲时间,而keepalive_requests定义了一个持久连接上可以处理的最大请求数。适当调整这两个参数可以减少连接的建立和关闭的开销。 3. 启用gzip压缩:通过启用gzip压缩,可以减少传输数据的大小,从而提高网络传输效率。在nginx配置中添加以下内容即可启用gzip压缩: ``` gzip on; gzip_comp_level 5; gzip_min_length 256; gzip_types text/plain application/javascript application/x-javascript text/css application/xml application/json; ``` 这些配置可以根据具体需求进行调整。 4. 配置缓存:对于静态资源或者频繁访问的动态页面,可以配置缓存来减少后端服务器的压力。可以使用nginx的proxy_cache模块或者fastcgi_cache模块来实现缓存功能。 5. 避免不必要的模块加载:根据具体需求,可以禁用一些不必要的nginx模块,以减少内存消耗和提高性能。 这些是一些常见的nginx配置调优的方法,具体的优化策略需要根据实际情况进行调整。在进行配置调优时,建议先进行性能测试,观察系统的负载情况和性能指标,并根据测试结果进行相应的调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

加班狂魔

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

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

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

打赏作者

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

抵扣说明:

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

余额充值