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的rewrite
Mar 09 Servers
Nginx服务器如何设置url链接
Mar 31 Servers
详解Nginx 被动检查服务器的存活状态
Oct 16 Servers
Nginx防盗链与服务优化配置的全过程
Jan 18 Servers
解决xampp安装后Apache无法启动
Mar 21 Servers
KVM基础命令详解
Apr 30 Servers
apache ftpserver搭建ftp服务器
May 20 Servers
zabbix配置nginx监控的实现
May 25 Servers
nginx rewrite功能使用场景分析
May 30 Servers
教你如何用cmd快速登录服务器
Jun 10 Servers
Apache自带的ab压力测试工具的实现
Jul 23 Servers
ubuntu如何搭建vsftpd服务器
Dec 24 Servers
Nginx优化服务之网页压缩的实现方法
Nginx 负载均衡是什么以及该如何配置
Mar 31 #Servers
Nginx快速入门教程
nginx如何将http访问的网站改成https访问
Mar 31 #Servers
Nginx+Tomcat实现负载均衡、动静分离的原理解析
使用nginx动态转换图片大小生成缩略图
Mar 31 #Servers
Nginx反向代理多个服务器的实现方法
You might like
php数据结构与算法(PHP描述) 查找与二分法查找
2012/06/21 PHP
如何在php中正确的使用json
2013/08/06 PHP
zf框架的session会话周期及次数限制使用示例
2014/03/13 PHP
PHP统计当前在线用户数实例讲解
2015/10/21 PHP
使用ThinkPHP生成缩略图及显示
2017/04/27 PHP
用JS剩余字数计算的代码
2008/07/03 Javascript
jquery 1.4.2发布!主要是性能与API
2010/02/25 Javascript
js对象的比较
2011/02/26 Javascript
JQuery中对服务器控件 DropdownList, RadioButtonList, CheckboxList的操作总结
2011/06/28 Javascript
jquery子元素过滤选择器使用示例
2013/06/24 Javascript
一个不错的js html页面倒计时可精确到秒
2014/10/22 Javascript
javascript中类的定义方式详解(四种方式)
2015/12/22 Javascript
Adapter适配器模式在JavaScript设计模式编程中的运用分析
2016/05/18 Javascript
jQuery和hwSlider实现内容响应式可触控滑动切换效果附源码下载(二)
2016/06/22 Javascript
AngularJS 过滤器(自带和自建)详解
2016/09/19 Javascript
NodeJs读取JSON文件格式化时的注意事项
2016/09/25 NodeJs
vue2.0数据双向绑定与表单bootstrap+vue组件
2017/02/27 Javascript
vue2.0移除或更改的一些东西(移除index key)
2017/08/28 Javascript
微信小程序tabBar用法实例详解
2017/12/04 Javascript
脚手架vue-cli工程webpack的作用和特点
2018/09/29 Javascript
npm ci命令的基本使用方法
2020/09/20 Javascript
python使用三角迭代计算圆周率PI的方法
2015/03/20 Python
Python3.6通过自带的urllib通过get或post方法请求url的实例
2018/05/10 Python
django orm 通过related_name反向查询的方法
2018/12/15 Python
Python开启线程,在函数中开线程的实例
2019/02/22 Python
python隐藏终端执行cmd命令的方法
2019/06/24 Python
Python+threading模块对单个接口进行并发测试
2019/06/25 Python
Django 项目布局方法(值得推荐)
2020/03/22 Python
介绍一下游标
2012/01/10 面试题
机械专业个人求职自荐信格式
2013/09/21 职场文书
老师给学生的表扬信
2014/01/17 职场文书
欢迎家长标语
2014/10/08 职场文书
基层党员群众路线整改措施及努力方向
2014/10/28 职场文书
英语通知范文
2015/04/22 职场文书
2015年监理个人工作总结
2015/05/23 职场文书
导游词之无锡唐城
2019/12/12 职场文书