标签:nginx ## worker LNMP sys 并发 net 上万 proc
测试机器为腾讯云服务器1核1G内存,swap分区2G,停用除SSH外的所有服务,仅保留nginx,优化思路主要包括两个层面:sysctl系统设置+nginx参数设置。
【 systemctl是systemd的管理工具, systemd复制管理系统和进程】
【 sysctl命令被用于在内核运行时动态地修改内核的运行参数,可用的内核参数在目录/proc/sys中】
第一步:sysctl系统设置
先查看--再改--再查看(不要直接上来就改,否则不知道是否改变)
## 打开文件数量
ulimit -a
ulimit -n 20480
【腾讯云服务器的,文件地址也是一样的,TCP属于OSI传输层协议,是底层,所有linux应该都是一样的】
【commond>file是将输出重定向到file,shell语法】
## TCP最大连接数
cat /proc/sys/net/core/somaxconn ##我的结果是128
echo 10000 > /proc/sys/net/core/somaxconn
##TCP连接立即回收、回用
cat /proc/sys/net/ipv4/tcp_tw_reuse ##我的结果是1,不需要改了
cat /proc/sys/net/ipv4/tcp_tw_recycle ##我的结果是1,不需要改了
echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse
echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle
cat /proc/sys/net/ipv4/tcp_syncookies ##我的结果是1
echo 0 > /proc/sys/net/ipv4/tcp_syncookies ## 屏蔽TCP异步
sysctl -p ## 设置生效
第二步:nginx参数设置
【参考链接4、5里面有更详细配置,可以参考】
【## worker 进程数应该设置为等于 CPU 的核数,高流量并发场合也可以考虑将进程数提高至 CPU 核数 *2 】
【 # 查看CPU核数 grep -c processor /proc/cpuinfo】
worker_processes 1;
worker_rlimit_nofile 20000; ##配置Nginx worker进程最大打开文件数
events
{
use epoll;
worker_connections 20000; ##单个进程允许的客户端最大连接数
multi_accept on;
}
http {
keepalive_timeout 0;
}
##重启nginx
【 命令格式 systemctl [command] [unit]】
systemctl restart nginx
————————————————
参考原文:
LNMP 高并发配置(解决上万并发量不是问题)https://blog.csdn.net/zha2008min/article/details/103438170
参考链接:
1. systemctl VS sysctl VS service VS init.d https://www.dazhuanlan.com/2019/12/13/5df2f21849302/
2. Linux ulimit命令 https://www.runoob.com/linux/linux-comm-ulimit.html
3. 常用的Linux下查看服务器配置的命令(命令结果没有具体的标注) https://blog.csdn.net/u011636440/article/details/78611838
4. nginx优化worker进程最大打开文件数worker_rlimit_nofile(作者也是转载,有原文链接) https://blog.csdn.net/weixin_34331102/article/details/91681934
我不放原文链接,是怕原文url有一天打不开了
5. nginx——优化 Nginx worker 进程数 https://www.cnblogs.com/qianbixueyuan/p/9518770.html
6. 怎样才算高并发? https://blog.csdn.net/jiaweiok123/article/details/87804081
标签:nginx,##,worker,LNMP,sys,并发,net,上万,proc 来源: https://blog.csdn.net/weiwenjuan0923/article/details/106555659
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。