nginx优化的几点方法(图文)
一.优化Nginx并发量
1 2 3 |
[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配置文件,增加并发量
1 2 3 4 5 6 7 8 9 |
[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内核参数(最大文件数量)
1 2 3 4 5 6 7 8 9 |
[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列,分别如下: #用户或组 硬限制或软限制 需要限制的项目 限制的值 |
优化后测试服务器并发量
1 | [root@proxy ~] # ab -n 2000 -c 2000 http://192.168.4.5/ |
三.优化Nginx数据包头缓存
1 2 3 4 5 6 7 8 9 10 11 |
[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配置文件,增加数据包头部缓存大小
1 2 3 4 5 6 7 8 |
[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 |
四.对页面进行压缩处理
1 2 3 4 5 6 7 8 9 |
[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 .. .. |
五.服务器内存缓存
1 2 3 4 5 6 7 8 9 |
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次会被缓存 } |
六.浏览器本地缓存静态数据
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
[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 |
点个赞! ()
- 上一篇
Centos7安装Docker(图文)
1.卸载docker旧版本(我的centos7是新的,所以运行后不删除任何软件包) 1 2 3 4 5 6 7 8 yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \
- 下一篇
IIS7 IIS8 http自动跳转到HTTPS(80端口跳转443端口)(图文)
IIS7需要先确认是否安装 “URL REWRITE2 ” 伪静态模块 , 如果您已经安装可以跳过URL REWIRTE (伪静态模块)下载地址 : http://www.iis.net/downloads/microsoft/url-rewrite第一步: 选择站点, “URL 重写&
更多相关
相关文章
- linux的目录结构;Linux系统各个目录的作用介绍
- mssql2000数据库通过附加数据库转到SQL2008(图文)
- Win2012配置asp网站(图文教程)
- win2008 r2系统iis7中如何设置ip限制(图文)
- IIS7 支持html页面包含(include)html页面 IIS设置与代码编写
- Win2003+IIS6.0+php5.2.2+MySQL 5.0.41+phpMyAdmin 2.10.1环境配置安装
- 网站采集入库502 Bad Gateway错误时,修改PHP 配置修改参考
- 出错了,[腾讯云COSFS]运行时发生错误!qcloud_cos.cos_exception.CosClientError: SecretId and SecretKey is Required!
- 腾讯Linux云主机快速挂载云盘命令,设置开机自动挂载详细图文教程
- 腾讯轻量云主机win2012系统挂载SSD云硬盘操作步骤(图文)