一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

linux 系統(tǒng)優(yōu)化tcp連接

 bylele 2014-08-21

提高服務(wù)器的負(fù)載能力,是一個(gè)永恒的話題。在一臺(tái)服務(wù)器CPU和內(nèi)存資源額定有限的情況下,最大的壓榨服務(wù)器的性能,是最終的目的。要提高Linux系統(tǒng)下的負(fù)載能力,可以先啟用Apache的Worker模式(參考我寫(xiě)的《Ubuntu下配置Apache的Worker模式》一文),來(lái)提高單位時(shí)間內(nèi)的并發(fā)量。但是即使這么做了,當(dāng)網(wǎng)站發(fā)展起來(lái)之后,連接數(shù)過(guò)多的問(wèn)題就會(huì)日益明顯。在節(jié)省成本的情況下,可以考慮修改Linux的內(nèi)核TCP/IP參數(shù),來(lái)最大的壓榨服務(wù)器的性能。當(dāng)然,如果通過(guò)修改內(nèi)核參數(shù)也無(wú)法解決的負(fù)載問(wèn)題,也只能考慮升級(jí)服務(wù)器了,這是硬件所限,沒(méi)有辦法的事。

Linux系統(tǒng)下,TCP/IP連接斷開(kāi)后,會(huì)以TIME_WAIT狀態(tài)保留一定的時(shí)間,然后才會(huì)釋放端口。當(dāng)并發(fā)請(qǐng)求過(guò)多的時(shí)候,就會(huì)產(chǎn)生大量的TIME_WAIT狀態(tài)的連接,無(wú)法及時(shí)斷開(kāi)的話,會(huì)占用大量的端口資源和服務(wù)器資源(因?yàn)殛P(guān)閉后進(jìn)程才會(huì)退出)。這個(gè)時(shí)候我們可以考慮優(yōu)化TCP/IP的內(nèi)核參數(shù),來(lái)及時(shí)將TIME_WAIT狀態(tài)的端口清理掉。

本文介紹的方法只對(duì)擁有大量TIME_WAIT狀態(tài)的連接導(dǎo)致系統(tǒng)資源消耗有效,不是這個(gè)原因的情況下,效果可能不明顯。那么,到哪兒去查T(mén)IME_WAIT狀態(tài)的連接呢?那就是使用netstat命令。我們可以輸入一個(gè)復(fù)核命令,去查看當(dāng)前TCP/IP連接的狀態(tài)和對(duì)應(yīng)的個(gè)數(shù):

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

這個(gè)命令會(huì)顯示出類似下面的結(jié)果:

LAST_ACK 14
SYN_RECV 348
ESTABLISHED 70
FIN_WAIT1 229
FIN_WAIT2 30
CLOSING 33
TIME_WAIT 18122

我們只用關(guān)心TIME_WAIT的個(gè)數(shù),在這里可以看到,有18000多個(gè)TIME_WAIT,這樣就占用了18000多個(gè)端口。要知道端口的數(shù)量只有65535個(gè),占用一個(gè)少一個(gè),會(huì)嚴(yán)重的影響到后繼的新連接。這種情況下,我們就有必要調(diào)整下Linux的TCP/IP內(nèi)核參數(shù),讓系統(tǒng)更快的釋放TIME_WAIT連接。

我們用vim打開(kāi)配置文件:

#vim /etc/sysctl.conf

然后,在這個(gè)文件中,加入下面的幾行內(nèi)容:

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

最后輸入下面的命令,讓內(nèi)核參數(shù)生效:

#/sbin/sysctl -p

簡(jiǎn)單的說(shuō)明下,上面的參數(shù)的含義:

net.ipv4.tcp_syncookies = 1 表示開(kāi)啟SYN Cookies。當(dāng)出現(xiàn)SYN等待隊(duì)列溢出時(shí),啟用cookies來(lái)處理,可防范少量SYN攻擊,默認(rèn)為0,表示關(guān)閉;
net.ipv4.tcp_tw_reuse = 1 表示開(kāi)啟重用。允許將TIME-WAIT sockets重新用于新的TCP連接,默認(rèn)為0,表示關(guān)閉;
net.ipv4.tcp_tw_recycle = 1 表示開(kāi)啟TCP連接中TIME-WAIT sockets的快速回收,默認(rèn)為0,表示關(guān)閉;
net.ipv4.tcp_fin_timeout 修改系統(tǒng)默認(rèn)的 TIMEOUT 時(shí)間。

在經(jīng)過(guò)這樣的調(diào)整之后,除了會(huì)進(jìn)一步提升服務(wù)器的負(fù)載能力之外,還能夠防御一定程度的DDoS、CC和SYN攻擊,是個(gè)一舉兩得的做法。

此外,如果你的連接數(shù)本身就很多,我們可以再優(yōu)化一下TCP/IP的可使用端口范圍,進(jìn)一步提升服務(wù)器的并發(fā)能力。依然是往上面的參數(shù)文件中,加入下面這些配置:

net.ipv4.tcp_keepalive_time = 1200
net.ipv4.ip_local_port_range = 10000 65000
net.ipv4.tcp_max_syn_backlog = 8192
net.ipv4.tcp_max_tw_buckets = 5000

這幾個(gè)參數(shù),建議只在流量非常大的服務(wù)器上開(kāi)啟,會(huì)有顯著的效果。一般的流量小的服務(wù)器上,沒(méi)有必要去設(shè)置這幾個(gè)參數(shù)。這幾個(gè)參數(shù)的含義如下:

net.ipv4.tcp_keepalive_time = 1200 表示當(dāng)keepalive起用的時(shí)候,TCP發(fā)送keepalive消息的頻度。缺省是2小時(shí),改為20分鐘。
net.ipv4.ip_local_port_range = 10000 65000 表示用于向外連接的端口范圍。缺省情況下很小:32768到61000,改為10000到65000。(注意:這里不要將最低值設(shè)的太低,否則可能會(huì)占用掉正常的端口!
net.ipv4.tcp_max_syn_backlog = 8192 表示SYN隊(duì)列的長(zhǎng)度,默認(rèn)為1024,加大隊(duì)列長(zhǎng)度為8192,可以容納更多等待連接的網(wǎng)絡(luò)連接數(shù)。
net.ipv4.tcp_max_tw_buckets = 5000 表示系統(tǒng)同時(shí)保持TIME_WAIT的最大數(shù)量,如果超過(guò)這個(gè)數(shù)字,TIME_WAIT將立刻被清除并打印警告信息。默 認(rèn)為180000,改為5000。對(duì)于Apache、Nginx等服務(wù)器,上幾行的參數(shù)可以很好地減少TIME_WAIT套接字?jǐn)?shù)量,但是對(duì)于 Squid,效果卻不大。此項(xiàng)參數(shù)可以控制TIME_WAIT的最大數(shù)量,避免Squid服務(wù)器被大量的TIME_WAIT拖死。

經(jīng)過(guò)這樣的配置之后,你的服務(wù)器的TCP/IP并發(fā)能力又會(huì)上一個(gè)新臺(tái)階。


    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    日韩精品免费一区二区三区| 日本高清视频在线观看不卡| 狠狠干狠狠操亚洲综合| 日韩蜜桃一区二区三区| 性感少妇无套内射在线视频| 欧美美女视频在线免费看| 亚洲熟女诱惑一区二区| 日韩免费av一区二区三区| 国产日韩熟女中文字幕| 男女午夜在线免费观看视频 | 俄罗斯胖女人性生活视频| 久久99爱爱视频视频| 国产又色又爽又黄又免费| 大香蕉精品视频一区二区| 日本午夜免费观看视频| 国产一级精品色特级色国产| 99久久无色码中文字幕免费| 情一色一区二区三区四| 精品久久少妇激情视频| 男人和女人干逼的视频| 欧美日韩国产二三四区| 久久精品欧美一区二区三不卡 | 国产午夜在线精品视频| 99精品国产一区二区青青 | 东京热一二三区在线免| 欧美日韩综合在线第一页| 国产精品99一区二区三区| 亚洲精品一区二区三区免| 欧美日韩一区二区三区色拉拉| 亚洲国产精品久久综合网| 欧美一级不卡视频在线观看| 国产高清精品福利私拍| 91麻豆视频国产一区二区| 视频在线观看色一区二区| 婷婷开心五月亚洲综合| 欧美不卡午夜中文字幕| 亚洲欧美中文日韩综合| 美女被后入视频在线观看| 日韩欧美亚洲综合在线| 千仞雪下面好爽好紧好湿全文| 国产又大又黄又粗的黄色|