服务器高并发优化.txt


立即下载 ⑩Ⅵ嵗D夨憶
2025-01-28
net.ipv4 连接 TCP SYN 默认 优化 文件 开启 TIME 关闭
4.7 KB

查看当前TCP连接的状态和对应的连接数量:netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'初步优化(提升服务器的负载能力之外,还能够防御小流量程度的DoS、CC和SYN攻击。)-------------------------------------------我们只用关心TIME_WAIT的个数,在这里可以看到,有18000多个TIME_WAIT,这样就占用了18000多个端口。要知道端口的数量只有65535个,占用一个少一个,会严重的影响到后继的新连接。这种情况下,我们就有必要调整下Linux的TCP内核参数,让系统更快的释放TIME_WAIT连接。用vim打开配置文件:#vim /etc/sysctl.conf在这个文件中,加入下面的几行内容:net.ipv4.tcp_syncookies = 1net.ipv4.tcp_tw_reuse = 1net.ipv4.tcp_tw_recycle = 1net.ipv4.tcp_fin_timeout = 30输入下面的命令,让内核参数生效:#sysctl -p描述:net.ipv4.tcp_syncookies = 1#表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;net.ipv4.tcp_tw_reuse = 1#表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;net.ipv4.tcp_tw_recycle = 1#表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭;net.ipv4.tcp_fin_timeout#修改系統默认的 TIMEOUT 时间。高级优化--------------------------------------------此外,如果你的连接数本身就很多,我们可以再优化一下TCP的可使用端口范围,进一步提升服务器的并发能力。依然是往上面的参数文件中,加入下面这些配置:net.ipv4.tcp_keepalive_time = 1200net.ipv4.ip_local_port_range = 10000 65000net.ipv4.tc

net.ipv4/连接/TCP/SYN/默认/优化/文件/开启/TIME_WAIT/关闭/ net.ipv4/连接/TCP/SYN/默认/优化/文件/开启/TIME_WAIT/关闭/
-1 条回复
登录 后才能参与评论
-->