首先处理nginx的nginx.conf
设置每个进程允许的最大连接数 worker_connections 设置大点(如10240,根据服务器性能判断)
设置一个进程允许打开的最大文件数 worker_rlimit_nofile 10000;
设置keepalive_timeout 65;为0不支持keep_alive(如果=1的话会导致有很多链接一直在waiting默认是65秒)
系统层面
修改最大链接数
查看more /proc/sys/net/core/somaxconn 未设置的时候是128
echo 50000 >/proc/sys/net/core/somaxconn
加快tcp链接回收
cat /proc/sys/net/ipv4/tcp_tw_recycle 默认为0 不进行自动回收
echo 1>/proc/sys/net/ipv4/tcp_tw_recycle
空的tcp是否允许回收
cat /proc/sys/net/ipv4/tcp_tw_reuse默认为0 不允许
echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse
开启抵制洪水***
cat /proc/sys/net/ipv4/tcp_syncookies 默认为1设置为0 不需要洪水抵制
echo0 > cat /proc/sys/net/ipv4/tcp_syncookies
设置允许打开的最大文件数
ulimit-n 50000 此处设置要根据nginx和服务器来觉得允许打开的最大文件数
在以上都设置好了后,如果要进行压力测试需要考虑的地方
做压力测试的时候要考虑压力测试工具是否扛的住,否则会影响测试效果,建议超过8k以上的就用多 台测试服务器进行压力测试(如担心不同时可以使用securecrt的->查看->交互窗口下面就会出现交互窗口,右键点击下面的交互窗口选中发送到所有标签,将命令输入进去即可,回车所有标签页同时执行)
转载于:https://blog.51cto.com/zhaol/1736521