Nginx(21)-十几种提升性能的优化方法

        无论何种类型的服务器或应用,其性能都取决于许多可变项,包括但不限于物理硬件、操作系统、数据库、应用服务器等中间件、应用结构等。性能优化通常在碰到性能瓶颈时才进行调优测试,确定瓶颈,改进限制,并不断重复,直至满足性能需求。
        本文仅针对Nginx作为一个中间件如何进行性能优化,解决出现在Nginx这个环节的瓶颈。如果是第一次优化,性能提升达到10倍都不是梦。

调优工具与步骤

        性能调优的第一件事情就是选择压测工具,压测工具可确保测试结果的一致性和可重复性。常见压测工具有Apache Jmeter、Load impact、LoadRunner或团队现有的测试工具。压测基本步骤:

  1. 建立环境
  2. 初测性能指标建立基线
  3. 缓慢增加模拟的并发用户数,以模拟典型的生产使用情况并确定改进点
  4. 调优改进
  5. 测试
  6. 不断重复3-5此流程,直至实现预期性能。

核心参数

NGINX 可以运行多个工作进程,每个都能够处理大量并发连接。示例:

# 默认是1
worker_processes auto;
# 默认是512;合适值取决于服务器性能和流量性质,可通过测试确定。
worker_connections 16384;

参数详见:精通Nginx(04)-核心指令

连接请求优化

客户端长连接

       要增加可在单个客户端连接上发起的请求数以及空闲连接可保持的时长。使用 keepalive_requests keepalive_timeout 指令,更改可在单个连接上发起的请求 数以及空闲连接可保持打开状态的时长。示例如下:
http {
    # 在1.19.10之前默认100;之后默认为1000
    keepalive_requests 1000; 
    #默认75s
    keepalive_timeout 300s;
    ...
}

指令详见:精通Nginx(05)-http工作机制、指令和内置变量

分流/限制

根据客户端访问特点,可进行有效分流。

如果客户端消耗资源太多,可采用客户端限制策略。

具体配置操作详见:精通Nginx(12)-流量管控

SSL/TLS优化

SSL/TLS在网站中的应用非常广泛,但同时带来的相关性能问题也困扰着许多网站。NGINX 通过SSL性能优化,可以将执行 SSL/TLS 加密和解密的时间及 CPU 消耗降到最低。

具体配置操作详见:精通Nginx(14)-配置HTTPS

实施HTTP/2

       

  • 19
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

乐享技术

每一个打赏,都是对我最大的鼓励

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

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

打赏作者

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

抵扣说明:

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

余额充值