來自《深入理解Nginx模塊開發與架構解析》 P9
#表示進程(例如一個worker進程)可能同時打開的最大句柄數,直接限制最大並發連接數
fs.file max = 999999
#1代表允許將狀態為TIME-WAIT狀態的socket連接重新用於新的連接。對於服務器來說有意義,因為有大量的TIME-WAIT狀態的連接
net.ipv4.tcp_tw_reuse = 1
#當keepalive啟用時,TCP發送keepalive消息的頻率。默認是2個小時。將其調小一些,可以更快的清除無用的連接
net.ipv4.tcp_keepalive_time = 600
#當服務器主動關閉鏈接時,socket保持FN-WAIT-2狀態的最大時間
net.ipv4.tcp_fin_timeout = 30
#允許TIME-WAIT套接字數量的最大值。超過些數字,TIME-WAIT套接字將立刻被清除同時打印警告信息。默認是180000,過多的TIME-WAIT套接字會使webserver變慢
net.ipv4.tcp_max_tw_buckets = 5000
#UDP和TCP連接中本地端口(不包括連接的遠端)的取值范圍
net.ipv4.ip_local_port_range = 1024 61000
#TCP接收/發送緩存的最小值、默認值、最大值
net.ipv4.tcp_rmem = 4096 32768 262142
net.ipv4.tcp_wmem = 4096 32768 262142
#當網卡接收的數據包的速度大於內核處理的速度時,會有一個隊列保存這些數據包。這個參數就是這個隊列的最大值。
net.core.netdev_max_backlog = 8096
#內核套接字接收/發送緩存區的默認值
net.core.rmem_default = 262144
net.core.wmem_default = 262144
#內核套接字接收/發送緩存區的最大值
net.core.rmem_max = 2097152
net.core.wmem_max = 2097152
#解決TCP的SYN攻擊。與性能無關
net.ipv4.tcp_syncookies = 1
#三次握手建立階段SYN請求隊列的最大長度,默認是1024。設置大一些可以在繁忙時將來不及處理的請求放入隊列,而不至於丟失客戶端的請求
net.ipv4.tcp_max_syn_backlog = 1024