nginx如何优化
更改nginx配置文件:
1、工作进程的数量,设为和CPU核数相同
2、结亲缘,cpu核与工作进程进行绑定,防止工作进程在cpu上来回跳转
3、设置工作进程优先级 orker_priority -20
4、nginx能打开的文件数量上限worker_rlimit_nofile 100000;和ulimit -n数量一致,ulimit -n 100000
5、nginx高并发
如果systemd启动,则需要修改nginx.service文件中加LimitNOFILE=100000,才能有效
vim /lib/systemd/system/nginx.service
[Service]
......
LimitNOFILE=100000
.....
添加之后:systemctl daemon-reload systemctl restart nginx
如果非systemd启动,可以修改下面pam限制:
vim /etc/security/limits.conf
* soft nofile 1000000
* hard nofile 1000000
vim /apps/nginx/conf/nginx.conf
worker_rlimit_nofile 100000;
systemctl restart nginx
events下
6、配置工作进程的最大并发连接数 如:worker_connections 100000; 总数要和nginx能打开的文件数量上限一致
7、epoll 支持众多的事件驱动
8、启动accept_mutex on; 防止惊群,一个请求来了只需要一个worker为其服务。 默认为off
9、multi_accept on;工作进程可以接受多个网络连接。 默认为off
10、反向代理缓存
11、nginx服务器作为代理与后端服务器建立连接的超时时间,默认为60s,可设置短一点
标签:systemd,nginx,30,worker,nofile,Nginx,100000,进程,优化
From: https://blog.51cto.com/mfc001/6293627