nginx优化的六点方法


Posted in Servers onMarch 31, 2021

一.优化Nginx并发量

[root@proxy ~]# ab -n 2000 -c 2000 http://192.168.4.5/
Benchmarking 192.168.4.5 (be patient)
socket: Too many open files (24)    //提示打开文件数量过多

修改Nginx配置文件,增加并发量

[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
.. ..
worker_processes 2;     //与CPU核心数量一致
events {
worker_connections 65535;  //每个worker最大并发连接数
use epoll;
}
.. ..
[root@proxy ~]# nginx -s reload

二.优化Linux内核参数(最大文件数量)

[root@proxy ~]# ulimit -a      //查看所有属性值
[root@proxy ~]# ulimit -Hn 100000    //设置硬限制(临时规则)
[root@proxy ~]# ulimit -Sn 100000    //设置软限制(临时规则)
[root@proxy ~]# vim /etc/security/limits.conf
 .. ..
*    soft nofile   100000
*    hard nofile   100000
#该配置文件分4列,分别如下:
#用户或组 硬限制或软限制 需要限制的项目 限制的值

优化后测试服务器并发量

[root@proxy ~]# ab -n 2000 -c 2000 http://192.168.4.5/

三.优化Nginx数据包头缓存

[root@proxy ~]# cat lnmp_soft/buffer.sh 
#!/bin/bash
URL=http://192.168.4.5/index.html?
for i in {1..5000}
do
 URL=${URL}v$i=$i
done
curl $URL        //经过5000次循环后,生成一个长的URL地址栏
[root@proxy ~]# ./buffer.sh
.. ..
<center><h1>414 Request-URI Too Large</h1></center>  //提示头部信息过大

修改Nginx配置文件,增加数据包头部缓存大小

[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
.. ..
http {
client_header_buffer_size 1k;  //默认请求包头信息的缓存 
large_client_header_buffers 4 4k;  //大请求包头部信息的缓存个数与容量
.. ..
}
[root@proxy ~]# nginx -s reload

四.对页面进行压缩处理

[root@proxy ~]# cat /usr/local/nginx/conf/nginx.conf
http {
.. ..
gzip on;       //开启压缩
gzip_min_length 1000;    //小文件不压缩
gzip_comp_level 4;    //压缩比率
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
         //对特定文件压缩,类型参考mime.types
.. ..

五.服务器内存缓存

http { 
open_file_cache   max=2000 inactive=20s;
  open_file_cache_valid 60s;
  open_file_cache_min_uses 5;
  open_file_cache_errors off;
//设置服务器最大缓存2000个文件句柄,关闭20秒内无请求的文件句柄
//文件句柄的有效时间是60秒,60秒后过期
//只有访问次数超过5次会被缓存
}

六.浏览器本地缓存静态数据

[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
server {
  listen  80;
  server_name localhost;
  location / {
   root html;
   index index.html index.htm;
  }
location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ {
expires  30d;   //定义客户端缓存时间为30天
}
}
[root@proxy ~]# cp /usr/share/backgrounds/day.jpg /usr/local/nginx/html
[root@proxy ~]# nginx -s reload

 

到此这篇关于nginx优化的六点方法的文章就介绍到这了,更多相关nginx优化内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Servers 相关文章推荐
详解Apache SkyWalking 告警配置指南
Apr 22 Servers
nginx配置虚拟主机的详细步骤
Jul 21 Servers
使用 Apache 反向代理的设置技巧
Jan 18 Servers
使用 Apache Dubbo 实现远程通信(微服务架构)
Feb 12 Servers
nginx负载功能+nfs服务器功能解析
Feb 28 Servers
Nginx 常用配置
May 15 Servers
Win Server2016远程桌面如何允许多用户同时登录
Jun 10 Servers
Windows Server 2022 超融合部署(图文教程)
Jun 25 Servers
git中cherry-pick命令的使用教程
Jun 25 Servers
kubernetes集群搭建Zabbix监控平台的详细过程
Jul 07 Servers
windows server2016安装oracle 11g的图文教程
Jul 15 Servers
windows10 家庭版下FTP服务器搭建教程
Aug 05 Servers
Nginx优化服务之网页压缩的实现方法
Nginx 负载均衡是什么以及该如何配置
Mar 31 #Servers
Nginx快速入门教程
nginx如何将http访问的网站改成https访问
Mar 31 #Servers
Nginx+Tomcat实现负载均衡、动静分离的原理解析
使用nginx动态转换图片大小生成缩略图
Mar 31 #Servers
Nginx反向代理多个服务器的实现方法
You might like
php array_pop()数组函数将数组最后一个单元弹出(出栈)
2011/07/12 PHP
jquery+php实现导出datatables插件数据到excel的方法
2015/07/06 PHP
use jscript with List Proxy Server Information
2007/06/11 Javascript
基于jquery的时间段实现代码
2012/08/02 Javascript
Javascript中的getUTCDay()方法使用详解
2015/06/10 Javascript
全面解析Bootstrap表单使用方法(表单样式)
2015/11/24 Javascript
javascript+HTML5 Canvas绘制转盘抽奖
2020/05/16 Javascript
微信小程序 图片等比例缩放(图片自适应屏幕)
2016/11/16 Javascript
JS DOMReady事件的六种实现方法总结
2016/11/23 Javascript
深入理解vue中的$set
2017/06/01 Javascript
温故知新——JavaScript中的字符串连接问题最全总结(推荐)
2017/08/21 Javascript
vue-cli脚手架引入图片的几种方法总结
2018/03/13 Javascript
详解Ant Design of React的安装和使用方法
2018/12/27 Javascript
小程序开发踩坑:页面窗口定位(相对于浏览器定位)(推荐)
2019/04/25 Javascript
微信小程序云开发之数据库操作
2019/05/18 Javascript
npm qs模块使用详解
2020/02/07 Javascript
[01:32]寻找你心中的那团火 DOTA2 TI9火焰传递活动今日开启
2019/05/16 DOTA
详解Python中的strftime()方法的使用
2015/05/22 Python
利用Pandas 创建空的DataFrame方法
2018/04/08 Python
Python3.7安装keras和TensorFlow的教程图解
2020/06/18 Python
Python发送邮件的实例代码讲解
2019/10/16 Python
Python字典的概念及常见应用实例详解
2019/10/30 Python
wxpython绘制音频效果
2019/11/18 Python
django Layui界面点击弹出对话框并请求逻辑生成分页的动态表格实例
2020/05/12 Python
Python学习之os模块及用法
2020/06/03 Python
python使用QQ邮箱实现自动发送邮件
2020/06/22 Python
银行职员思想汇报
2013/12/31 职场文书
挂牌仪式策划方案
2014/05/18 职场文书
个人安全生产承诺书
2014/05/22 职场文书
总经理检讨书
2014/09/15 职场文书
2014年政协委员工作总结
2014/12/01 职场文书
毕业设计论文致谢词
2015/05/14 职场文书
JavaScript实现显示和隐藏图片
2021/04/29 Javascript
javascript遍历对象的五种方式实例代码
2021/10/24 Javascript
基于PyQT5制作一个桌面摸鱼工具
2022/02/15 Python
php解析非标准json、非规范json的方式实例
2022/05/10 PHP