Nginx优化
Nginx并发量优化
Nginx状态页面
配置优化
安装Nginx
源码安装Nginx
安装依赖包: yum -y install gcc pcre-devel openssl-devel
创建普通用户: useradd –s /sbin/nologin nginx
解压Nginx源码包: tar -xf nginx-1.10.3.tar.gz
进入源码包路径:cd nginx-1.10.3
编译安装Nginx
检测环境,指定安装功能与安装位置:
./configure
--prefix=/usr/local/nginx #指定安装路径
--user=nginx #指定用户
--group=nginx #指定组
--with-http_ssl_module #指定模块名
编译源码:make
安装:make install
控制服务
启动服务:/usr/local/nginx/sbin/nginx
查看服务状态:ss -anptul | grep nginx
关闭服务:/usr/local/nginx/sbin/nginx -s stop
重新加载服务:/usr/local/nginx/sbin/nginx -s reload
查看软件信息:/usr/local/nginx/sbin/nginx -V
修改默认网站页面:vi /usr/local/nginx/html/index.html
<marquee><font color=green><hl>2020.11.3 星期二<marquee>
nginx默认是不支持中文的:vi /usr/local/nginx/conf/nginx.conf
#charset koi8-r; //把koi8-r改为UTF-8,并且把#号去掉就可以显示中文了
Nginx服务参数
修改了配置文件记得重启服务或者加载配置:/usr/local/nginx/sbin/nginx -s reload
Nginx配置文件及目录
/usr/local/nginx/ //默认安装目录
conf/nginx.conf //主配置文件
html //网页目录
logs //日志文件
sbin/nginx //启动脚本
Nginx并发量优化
安装http-tools,使用ab压力测试工具(***注意:ab压测工具最大只能测试两万并发访问量***)
ab -n 总请求数 -c 并发数 URL
yum -y install httpd-tools
ab -n 1000 -c 1000 http://192.168.234.99/ //测试压力
ab -n 2000 -c 2000 http://192.168.234.99/ //测试压力
socket: Too many open files (24) //打开文件数量过多
主要看这2行
2000访问就炸了???(不是说nginx并发高达5~6w?why?)详情请看下图分解
默认最大连接数是1024,所以2000访问就炸了
改下最大连接数(5~6w)就可以了,进程数可根据CPU核数修改,
修改配置文件之后你发现还是这样的,why???下图分解
内核不允许!!!
这个问题修改内核限制就可以了(临时的)
这个问题是个人电脑配置跟不上!!!(注意:ab压测工具最大只能测试两万并发访问量)
优化Linux内核参数
修改Linux内核打开文件的最大数量
ulimit -Hn 100000 //硬限制(临时)
ulimit -Sn 100000 //软限制(临时)
永久修改
vim /etc/security/limits.conf
- (所有人) sort (软限制) hard (硬限制) nofile (打开文件数量) 65535