linux優(yōu)化

cat >> /etc/sysctl.conf 

# kernel optimization
net.ipv4.tcp_fin_timeout = 30 
#表示如果套接字由本端要求關閉,這個參數決定了它保持在FIN-WAIT-2狀態(tài)的時間。默認是60s。

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_syncookies = 1  
#開啟SYN Cookies。當出現SYN等待隊列溢出時,啟用cookies來處理,可防范少量SYN攻擊,默認為0,表示關閉
net.ipv4.tcp_keepalive_time = 600 
#表示當keepalive起用的時候,TCP發(fā)送keepalive消息的頻度。缺省是2小時,改為10分鐘。

net.ipv4.ip_local_port_range = 10000 60999 
#表示用于向外連接的端口范圍。缺省情況下很?。?2768到61000,改為10000到60999。

net.ipv4.tcp_max_syn_backlog = 16384 
#表示SYN隊列的長度,默認為1024,加大隊列長度為8192,可以容納更多等待連接的網絡連接數

net.ipv4.tcp_max_tw_buckets = 20000 
#表示系統(tǒng)同時保持TIME_WAIT套接字的最大數量,如果超過這個數字,TIME_WAIT套接字將立刻被清除并打印警告信息。默認為180000,改為20000 。

統(tǒng)計TIME_WAIT 連接數

netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

ESTABLISHED 90
SYN_SENT 1
TIME_WAIT 1989

其中為了讓系統(tǒng)更快的釋放TIME_WAIT連接,調整的參數是

net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 30

調整句柄數

cat /etc/security/limits.conf
root hard nofile 65535
root soft nofile 65535
root hard nproc  65535
root soft nproc  65535
pidof  + 命令  獲取命令進程的pid號
ll /proc/$pid/fd 查看該進程所使用的文件秒速符列表

查看文件描述符
系統(tǒng)級
1、cat /proc/sys/fs/file-max
2、sysctl -a | grep fs.file-max
用戶級
vim /etc/security/limits.conf 
修改其中的 hard nofile xxxx 和 soft nofile xxxx
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容