內核參數調優
TCP 三次握手中需要調優的內核參數
SYN 半連接隊列 net.ipv4.tcp_max_syn_backlog
半連接隊列滿時 開啟syncookies net.ipv4.tcp_syncookies = 1
全連接隊列 大小取的 min(somaxconn, backlog)最小值,所以調整兩個參數
net.core.somaxconn net.core.somaxconn=65535
nginx配置文件調整 listen 80 backlog=8192
tcp_synack_retries 值調小
開始 TCP Fast Open,減少TCP建立連接的時延
echo 3 > /proc/sys/net/ipv4/tcp_fastopen
TCP 四次揮手中需要調優的內核參數
TIME_WAIT 狀態的連接數量,會占用一定資源 net.ipv4.tcp_max_tw_buckets = 6000
開啟端口復用,被 TIME_WAIT 狀態占用的端口,還能用到新建的連接中 net.ipv4.tcp_tw_reuse=1
減小FIN_WAIT2 狀態的參數 net.ipv4.tcp_fin_timeout=15
增大本地端口的范圍,這樣就可以支持更多連接,提高整體的并發能力。 net.ipv4.ip_local_port_range="1024 65535"
數據傳輸優化
啟用窗口擴大因子功能,net.ipv4.tcp_window_scaling = 1
調整發送緩沖區 net.ipv4.tcp_rmem = 4096 87380 4194304
調整接收緩沖區 net.ipv4.tcp_wmem = 4096 65536 4194304
調整內存范圍 net.ipv4.tcp_mem = 524288 699050 1048576

浙公網安備 33010602011771號