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

本文为博客 VIP 文章,开通 VIP 后可阅读全文

开通 VIP
        无论何种类型的服务器或应用,其性能都取决于许多可变项,包括但不限于物理硬件、操作系统、数据库、应用服务器等中间件、应用结构等。性能优化通常在碰到性能瓶颈时才进行调优测试,确定瓶颈,改进限制,并不断重复,直至满足性能需求。
        本文仅针对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

       对于已经使用 SSL/TLS 的站点,HTTP/2 会让性能更上一层楼,因为一个连接仅需要一次握手,且单个连接是多路复用的,一个连接可同时承载多个请求和响应。

具体配置操作详见:精通Nginx(16)-支持http2/3与websocket

Nginx配置及linux系统内存高并发多方面优化 基于网上的技术文章思路,自己加以整理,有常用的和不常用的策略,供参考。nginx优化1. gzip压缩优化 2. expires缓存有还 3. 网络IO事件模型优化 4. 隐藏软件名称和版本号 5. 防盗链优化 6. 禁止恶意域名解析 7. 禁止通过IP地址访问网站 8. HTTP请求方法优化 9. 防DOS攻击单IP并发连接的控制,与连接速... 阅读详情

相关推荐

飞腾腾云S2500 Nginx单机环回测试性能调优方法

介绍nginx环回测试性能调优方法

developersupport的博客 1047

Nginx性能优化(超详细)

一、性能优化考虑点 当我需要进行性能优化时,说明我们服务器无法满足日益增长的业务。性能优化是一个比较大的课题,需要从以下几个方面进行探讨。 当前系统结构瓶颈 了解业务模式 性能和安全 一、当前系统结构瓶颈 首先需要了解的是当前系统瓶颈,用的是什么,跑的什么业务。里面的服务是什么样子,每个服务最大支持多少并发。比如针对Nginx而言,我们处理静态资源最高的瓶颈是多大。 可以通过查看当前cpu负荷,内存使用...............

qq_57377057的博客 1万+

nginx参数调优能提升多少性能

nginx安装后一般都会进行参数优化,网上找找也有很多相关文章,但是这些参数优化Nginx性能会有多大影响?为此我做个简单的实验测试下这些参数能提升多少性能。声明一下,测试流程比较简单,后端服务也很简单,测试时间也很短,所以实验并不严谨,结果仅作参考,需要根据实际情况进行参数调优。文章或有错误和疏漏之处,欢迎各位大佬指出或补充。

wqda125的博客 522

Nginx性能调优策略|进阶篇

Nginx是一个高性能的Web服务器和反向代理服务器,常用于处理高并发的请求。

justlpf的专栏 2974

社区版IDEA玩转Spring Boot:手把手配置插件实现yml智能提示与项目创建

本文详细介绍了如何在IntelliJ IDEA社区版中配置Spring Boot Assistant插件,实现yml文件的智能提示与项目创建功能。通过分步指南和高级技巧,帮助开发者提升Spring Boot开发效率,弥补社区版功能限制,打造专业级开发环境。

chushang0934的博客 428

Nginx性能优化方法总结--详细

目录[-] nginx优化 #将nginx进程设置为普通用户,为了安全考虑 user nginx; #当前启动的worker进程,官方建议是与系统核心数一致 worker_processes 2; #方式一,就是自动分配绑定 worker_cpu_affinity auto; #日志配置成warn error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; #针对 nginx 句柄的文件限制 worker_rlimit_nof...

u014748504的博客 3719

zxing的使用及优化

二维码介绍 zxing项目是谷歌推出的用来识别多种格式条形码的开源项目,项目地址为https://github.com/zxing/zxing,zxing有多个人在维护,覆盖主流编程语言,也是目前还在维护的较受欢迎的二维码扫描开源项目之一。 zxing的项目很庞大,主要的核心代码在core文件夹里面,也可以单独下载由这个文件夹打包而成的jar包,具体地址在http://mvnreposit

lambert 7万+

面试题 nginx优化

nginx优化 1. gzip压缩优化 2. expires缓存有还 3. 网络IO事件模型优化 4. 隐藏软件名称和版本号 5. 防盗链优化 6. 禁止恶意域名解析 7. 禁止通过IP地址访问网站 8. HTTP请求方法优化 9. 防DOS攻击单IP并发连接的控制,与连接速率控制 10. 严格设置web站点目录的权限 11. ...

看水不是水 5150

Nginx 介绍、部署及性能优化

正向代理: 客户端非常明确要访问的服务器地址,它代理客户 端,替客户端发出请求。比如:FQ (警告⚠️:FQ操作违反相关法律规定,本篇文章仅供 学习参考,切勿盲目FQ)。反向代理: 均衡分工,控制流量,避免出现局部节点负载过大。反向代理隐藏了服务器的信息,它代理的是服务器端, 代其接收请求。换句话说,反向代理的过程中,客户端并不知道具体是 哪台服务器处理了自己的请求。如此一来,既提高了访 问速度,又为安全性提供了保证。

IT__lzl的博客 1938

Nginx性能优化方案

nginx优化 1. gzip压缩优化 2. expires缓存有还 3. 网络IO事件模型优化 4. 隐藏软件名称和版本号 5. 防盗链优化 6. 禁止恶意域名解析 7. 禁止通过IP地址访问网站 8. HTTP请求方法优化 9. 防DOS攻击单IP并发连接的控制,与连接速率控制 10. ...

weixin_30677475的博客 243

Nginx性能优化的几个方法

???? 这是一个或许对你有用的社群???? 一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料:《项目实战(视频)》:从书中学,往事上“练”《互联网高频面试题》:面朝简历学习,春暖花开《架构 x 系统设计》:摧枯拉朽,掌控面试高频场景题《精进 Java 学习指南》:系统学习,互联网主流技术栈《必读 Java 源码专栏》:知其然,知其所以然????这是一个或许...

芋艿V 87

Nginx软件优化

Nginx软件优化

2401_87991300的博客 685

Nginx配置文件,这样优化后,性能提升好几倍

Nginx是一个轻量级的高性能HTTP反向代理服务器,同时它也是一个通用类型的代理服务器,支持绝大部分协议,如TCP、UDP、SMTP、HTTPS等。用Nginx代理后,客户端的请求由其进行分发到服务器处理,服务器处理完后再返回Nginx,由Nginx结果返回给客户端。

huang714的专栏 2154

如何通过NGINX-tuning实现9倍性能提升:线程池与异步I/O深度优化

想要让您的Web服务器性能实现9倍飞跃吗?NGINX-tuning项目提供了完整的性能优化解决方案,通过线程池、异步I/O和深度调优配置,让您的NGINX服务器从普通性能升级到极致性能。本文将为您揭示实现这一惊人性能提升的核心技术和配置方法。 ## 🔥 为什么需要NGINX性能调优? 在当今高并发互联网环境中,默认的NGINX配置往往无法充分发挥服务器硬件的全部潜力。许多系统管理员发现,即使

gitblog_00008的博客 740

nginx相关配置及高并发优化

当前节点的身份标识:用来决定主从(MASTER为主机,BACKUP为从机)# 绑定虚拟IP的网络接口,根据自己的机器的网卡配置# 虚拟路由的ID号,主从两个节点设置必须一样# 填写本机IP# 节点权重优先级,主节点要比从节点优先级高# 优先级高的设置nopreempt,解决异常恢复后再次抢占造成的脑裂问题nopreempt# 组播信息发送间隔,两个节点设置必须一样,默认1s(类似于心跳检测)# 将track_script块加入instance配置块。

爱上编程2705 2539

nginx优化_安全方面的优化

1.1Nginx优化分类 安全优化提升网站安全性配置) 性能优化提升用户访问网站效率) 1.2Nginx安全优化 1.2.1隐藏nginx版本信息优化 官方配置参数说明:http://nginx.org/en/docs/http/ngx_http_core_module.html#server_tokens 官方参数: Syntax: server_toke...

dianmu9475的博客 261

nginx网页优化

文章目录一、nginx服务优化1.1 配置Nginx隐藏版本号作用方法1.2 修改Nginx用户与组1.3 配置Nginx网页缓存时间网页缓存设置作用网页缓存设置方法二、nginx深入优化2.1 Nginx的日志切割日志分割的概述日志分割的方法2.2 配置Nginx实现连接超时超时参数设置方式2.3 更改Nginx运行进程数更改进程数的概述更改进程数的配置方法:2.4 配置Nginx实现网页压缩功能压缩功能参数压缩配置2.5 配置Nginx实现防盗链案例配置说明配置文件2.6 对FPM模块进行参数优化意义F

weixin_50344820的博客 867

nginx优化

安全优化提升网站安全性配置)性能优化提升用户访问网站效率)配置举例:修改版本信息需要修改程序源文件信息修改内核信息修改头部信息修改错误页显示修改完成后重新编译重启服务访问测试是否修改成功第一种方法:利用编译安装配置参数,设定nginx默认worker进程用户第二种方式:编写nginx服务配置文件,设定nginx默认worker进程用户配置举例:查看是否生效。

wuxingge的博客 780
上一篇: Nginx(20)-多种调试配置的方法与技巧
下一篇: Nginx(22)-网络传输层负载均衡-Stream和Mail
乐享技术
博客等级 码龄5年 254粉丝 · 103原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

乐享技术

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

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

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

打赏作者

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

抵扣说明:

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

余额充值