单机 1W 高并发优化

最近想写一篇关于高并发的文章;
因为之前做过一场活动;
2020年直播年货节;
单天创造啦;
直播一小时;
带货接近20W GMV;
应该是属于我的高光时刻吧;
也是对自己的挑战吧;
总结一下高并发的思路;
看图;
自己总结了一张图;
并发思路

首先可以分为两大块;
socket : 主要负责 发送链接 , 发送数据 , 断开连接;
文件 : 让nginx与系统可以打开更多文件;

因为其实我们的nginx抗并发的能力还是很优秀的;
我们的系统自带保护机制,抵御外部攻击;

有这样的几个配置参数;

nginx :

  1. http 连接快速关闭 keepalive_timeout 使我们的请求响应完 , 迅速断开连接 , 我这里设置成 2s;
  2. 子进程允许打开的连接 worker_connections 打开的子进程肯定是越多越好 , 这样就能处理更多请求,但是这个参数最好根据服务器内存来决定 , 这玩样吃内存 , 我这里设置成 20000;
  3. 还有一个就是允许子进程打开文件 worker_rlimit_nofile 配置成 1 就好啦;

linux内核参数 :

  1. 修改系统最大的打开文件数 ulimit -n;
  2. echo 20000 > /proc/sys/net/core/somaxconn 修改系统最大连接数 设置成20000;
  3. echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle 0 是关闭 1 是开启 加快tcp连接与回收,设置成1;
  4. echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse 0 是关闭 1 是开启 闲置的tcp是否允许回收利用,设置成1;
  5. echo 0 > /proc/sys/net/ipv4/tcp_syncookies 0 是关闭 1 是开启 系统默认抵御洪水攻击,不做洪水抵御,设置成0;

配置完成之后;
在做下测试;
大家可以下一个压测工具;
ab压测工具;
如果是apache的话;
自带ab压测工具;

哈哈哈;
世间美好;
与你环环相扣;

史大坨博客
请先登录后发表评论
  • 最新评论
  • 总共1条评论
史大坨博客

沉默之劍:我也叫zw哈哈哈

2021-03-30 23:43:08 回复