nginx 服务器 高并发处理

首先处理nginxnginx.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设置为不需要洪水抵制 

    echo0 > cat /proc/sys/net/ipv4/tcp_syncookies

    设置允许打开的最大文件数

           ulimit-n 50000 此处设置要根据nginx和服务器来觉得允许打开的最大文件数


在以上都设置好了后,如果要进行压力测试需要考虑的地方

   做压力测试的时候要考虑压力测试工具是否扛的住,否则会影响测试效果,建议超过8k以上的就用多    台测试服务器进行压力测试(如担心不同时可以使用securecrt的->查看->交互窗口下面就会出现交互窗口,右键点击下面的交互窗口选中发送到所有标签,将命令输入进去即可,回车所有标签页同时执行)




 

你可能感兴趣的:(nginx高并发处理)