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 相关文章推荐
Nginx反向代理多个服务器的实现方法
Mar 31 Servers
如何利用map实现Nginx允许多个域名跨域
Mar 31 Servers
nginx 防盗链防爬虫配置详解
Mar 31 Servers
uwsgi+nginx代理Django无法访问静态资源的解决
May 10 Servers
nginx部署多前端项目的几种方法
May 25 Servers
nginx内存池源码解析
Nov 20 Servers
Windows Server 2012 修改远程默认端口3389的方法
Apr 28 Servers
centos7安装mysql5.7经验记录
May 02 Servers
Tomcat弱口令复现及利用
May 06 Servers
nginx lua 操作 mysql
May 15 Servers
apache ftpserver搭建ftp服务器
May 20 Servers
讨论nginx location 顺序问题
May 30 Servers
Nginx优化服务之网页压缩的实现方法
Nginx 负载均衡是什么以及该如何配置
Mar 31 #Servers
Nginx快速入门教程
nginx如何将http访问的网站改成https访问
Mar 31 #Servers
Nginx+Tomcat实现负载均衡、动静分离的原理解析
使用nginx动态转换图片大小生成缩略图
Mar 31 #Servers
Nginx反向代理多个服务器的实现方法
You might like
阿拉伯的咖啡与水烟
2021/03/03 咖啡文化
造就帕卡马拉的帕卡斯是怎么被发现的
2021/03/03 咖啡文化
PHP上传图片时判断上传文件是否为可用图片的方法
2016/10/20 PHP
微信接口生成带参数的二维码
2017/07/31 PHP
PHP PDOStatement::nextRowset讲解
2019/02/01 PHP
ExtJS 简介 让你知道extjs是什么
2008/12/29 Javascript
JavaScript Prototype对象
2009/01/07 Javascript
AeroWindow 基于JQuery的弹出窗口插件
2011/06/27 Javascript
禁止IE用右键的JS代码
2013/12/30 Javascript
jquery批量设置属性readonly和disabled的方法
2014/01/24 Javascript
js的Prototype属性解释及常用方法
2014/05/08 Javascript
js获取域名的方法
2015/01/27 Javascript
javascript实现选中复选框后相关输入框变灰不可用的方法
2015/08/11 Javascript
详解JavaScript语言的基本语法要求
2015/11/20 Javascript
快速学习jQuery插件 Form表单插件使用方法
2015/12/01 Javascript
微信小程序 教程之wxapp视图容器 swiper
2016/10/19 Javascript
jQuery制作图片旋转效果
2017/02/02 Javascript
利用ECharts.js画K线图的方法示例
2018/01/10 Javascript
深入分析element ScrollBar滚动组件源码
2019/01/22 Javascript
详解Next.js页面渲染的优化方案
2019/01/27 Javascript
Django+Vue实现WebSocket连接的示例代码
2019/05/28 Javascript
JS window对象简单操作完整示例
2020/01/14 Javascript
在vue中使用el-tab-pane v-show/v-if无效的解决
2020/08/03 Javascript
javascript解析json格式的数据方法详解
2020/08/07 Javascript
python 数据清洗之数据合并、转换、过滤、排序
2017/02/12 Python
Python使用matplotlib绘制正弦和余弦曲线的方法示例
2018/01/06 Python
html5基础标签(html5视频标签 html5新标签用法)
2013/12/30 HTML / CSS
德国珠宝和手表在线商店:VALMANO
2019/03/24 全球购物
Guess荷兰官网:美国服饰品牌
2020/01/22 全球购物
包装类的功能、种类、常用方法
2012/01/27 面试题
领导的自我鉴定
2013/12/28 职场文书
小学生作文评语
2014/04/18 职场文书
副职竞争上岗演讲稿
2014/05/12 职场文书
中学生检讨书1000字
2014/10/28 职场文书
2016感恩父亲节主题广播稿
2015/12/18 职场文书
Java 关于String字符串原理上的问题
2022/04/07 Java/Android