国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

Ulimit的坑,讓我的故障一波又一波

安全 應(yīng)用安全
最近遇到一個(gè)非常有趣的問題。其中有一組HAProxy,頻繁出現(xiàn)問題。登錄上服務(wù)器,cpu、內(nèi)存、網(wǎng)絡(luò)、io一頓猛查。最終發(fā)現(xiàn),機(jī)器上處于TIME_WAIT狀態(tài)的連接,多達(dá)6萬多個(gè)。

[[373179]]

本文轉(zhuǎn)載自微信公眾號「小姐姐味道」,作者小姐姐養(yǎng)的狗。轉(zhuǎn)載本文請聯(lián)系小姐姐味道公眾號。  

最近遇到一個(gè)非常有趣的問題。其中有一組HAProxy,頻繁出現(xiàn)問題。登錄上服務(wù)器,cpu、內(nèi)存、網(wǎng)絡(luò)、io一頓猛查。最終發(fā)現(xiàn),機(jī)器上處于TIME_WAIT狀態(tài)的連接,多達(dá)6萬多個(gè)。

TIME_WAIT狀態(tài),一般都會出現(xiàn)在HAProxy、Nginx這種代理機(jī)器上,主要是由于頻繁的主動關(guān)閉所造成的。通過修改reuse和回收參數(shù),可以比較快速的解決問題。

網(wǎng)絡(luò)狀態(tài)的統(tǒng)計(jì)數(shù)量,可以使用下面的命令進(jìn)行統(tǒng)計(jì)。

  1. netstat -ant|awk '/^tcp/ {++S[$NF]} END {for(a in S) print (a,S[a])}' 
  2. ESTABLISHED 70 
  3. FIN_WAIT2 30 
  4. CLOSING 33 
  5. TIME_WAIT 65520 

這本來沒什么神奇的,但65535這個(gè)數(shù)字,實(shí)在是太過于敏感。應(yīng)該是觸發(fā)了某種上限。

使我們更加感到疑惑的是:為什么TIME_WAIT狀態(tài)的連接,僅僅達(dá)到了65535,服務(wù)就不可用了?

到處號稱的單機(jī)百萬連接,是在吹牛皮么?怎么這么經(jīng)不起折騰?

65535,表示等于2的16次方減一,是一個(gè)神奇的數(shù)字。先把這小數(shù)字扔在一邊,我們來看一下Linux到底能支持多少個(gè)連接。

1. Linux能夠支持多少連接?

答案是無數(shù)個(gè)。可是端口只有65535個(gè)啊。

[[373180]]

為什么端口只有65535個(gè)?

這是一個(gè)歷史原因,因?yàn)樵赥CP、UDP協(xié)議的開頭,會分別有16位來存儲源端口號和目標(biāo)端口號。很遺憾的是,這個(gè)值是short類型的,大小也是2^16-1。

因?yàn)闅v史原因造成的不可改變的標(biāo)準(zhǔn),就是那么根深蒂固。

那Linux到底能支持多少個(gè)連接呢?答案是無數(shù)個(gè)。

拿nginx來說,我們把它監(jiān)聽在80端口上。這時(shí)候A機(jī)器去連接Nginx,可以發(fā)起多達(dá)6w多條長連接。如果B機(jī)器去連接Nginx,同樣也可以發(fā)起6w多條連接。這是由于確定一條連接,是由src和dst來共同決定的。

認(rèn)為Linux只能接受65535條連接的想法,只能說是犯了非常淺顯的想當(dāng)然主義。

65535個(gè)端口,作為壓測機(jī)可能對你來說太小了一些。但對于服務(wù)器來說,已經(jīng)綽綽有余了。

2. 如何支持百萬連接?

從上面可以看到,連接數(shù),是沒有限制的。但Linux還有一層防護(hù),那就是文件句柄數(shù)。通過lsof命令查看到的那些東西,就是所謂的文件句柄。

先來看一下幾個(gè)命令的展示。

ulmit,展示了每個(gè)進(jìn)程所能占用的文件句柄數(shù)量。

  1. ulimit -n 
  2. 65535 

file-max,展示了操作系統(tǒng)能夠占用的文件句柄數(shù)量總和,針對的是所有的進(jìn)程。

  1. cat /proc/sys/fs/file-max 
  2. 766722 

file-nr,展示了當(dāng)前已經(jīng)使用的句柄數(shù)量和總的句柄數(shù)量。可以拿來做監(jiān)控。

  1. cat /proc/sys/fs/file-nr 
  2. 1824  0 766722 

要支持百萬連接,既要放開操作系統(tǒng)級別的句柄,也要放開進(jìn)程級別的句柄。也就是說,ulimit和file-max的顯示,都要大于百萬才成。

3. 如何設(shè)置?

設(shè)置進(jìn)程的句柄個(gè)數(shù),常用的方式就有ulimit,但是非常非常不推薦。原因無他,只有在同一個(gè)shell中啟動的進(jìn)程,ulimit的設(shè)置才會生效。你打開另外一個(gè)shell,或者重啟機(jī)器,ulimit的改動都會丟失。就是下面這種方式:

  1. ulimit -n 1000000 

正確的方式,是修改/etc/security/limits.conf文件。比如下面的內(nèi)容。

  1. root soft nofile 1000000 
  2. root hard nofile 1000000 
  3. * soft nofile 1000000 
  4. * hard nofile 1000000 

可以看到,我們可以針對于特定的用戶,修改其句柄數(shù)量。這在安裝es等應(yīng)用時(shí),經(jīng)常碰到。

  1. es  -  nofile  65535 

但即使是這種方式,也要求你需要打開一個(gè)新的shell進(jìn)行操作。在當(dāng)前修改的shell里或者修改之前的shell里,同樣不生效。xjjdog就曾遇到過多起這樣明明放開了限制,但還是發(fā)生問題的案例。

要看到這些改變是否已經(jīng)對進(jìn)程生效,可以查看進(jìn)程的內(nèi)存映射文件。比如cat /proc/180323/limits,其中會有詳細(xì)的展示。

這個(gè)數(shù)值,也并不是想要設(shè)多大就多大的。它的大小上限,是由nr_open決定的。想要更大,就要修改/ect/sysct.conf 中fs.nr_open的值。

  1. cat /proc/sys/fs/nr_open 
  2. 1048576 

那file-max又該如何修改呢?建議修改/etc/sysctl.conf文件,加入下面內(nèi)容。足足有6百多萬!

  1. fs.file-max = 6553560 

當(dāng)文件數(shù)量超出的時(shí)候,就會報(bào)kernel: VFS: file-max limit 65535 reached的錯(cuò)誤。

總結(jié)一下。

Linux即使放開一個(gè)端口,能夠接受的連接也是海量的。這些連接的上限,受到單進(jìn)程文件句柄數(shù)量和操作系統(tǒng)文件句柄數(shù)量的限制,也就是ulimit和file-max。

為了能夠?qū)?shù)修改持久化,我們傾向于將改動寫入到文件里。進(jìn)程的文件句柄限制,可以放在/etc/security/limits.conf中,它的上限受到fs.nr_open的制約;操作系統(tǒng)的文件句柄限制,可以放到/etc/sysctl.conf文件中。最后,別忘了在/proc/$id/limits文件中,確認(rèn)修改是否對進(jìn)程生效了。

如此,百萬連接才名不虛傳。我比較奇怪的是,為什么Linux不默認(rèn)放開這些配置呢?做成65535也認(rèn)啊,為什么搞個(gè)1024?

 

作者簡介:小姐姐味道 (xjjdog),一個(gè)不允許程序員走彎路的公眾號。聚焦基礎(chǔ)架構(gòu)和Linux。十年架構(gòu),日百億流量,與你探討高并發(fā)世界,給你不一樣的味道。我的個(gè)人微信xjjdog0,歡迎添加好友,進(jìn)一步交流。

 

責(zé)任編輯:武曉燕 來源: 小姐姐味道
相關(guān)推薦

2015-11-05 10:07:56

2014-09-02 10:19:22

IT程序員

2020-08-06 17:16:47

抖音Tiktok美國

2014-09-29 14:35:57

WIFI物聯(lián)網(wǎng)RFID

2021-09-01 13:46:07

GitHub Copi漏洞代碼訓(xùn)練

2019-05-27 23:19:31

QQ騰訊回憶

2021-12-26 00:13:24

Log4jLogback漏洞

2010-10-21 14:38:07

網(wǎng)絡(luò)融合

2015-11-17 12:56:33

浪潮SC15

2023-07-14 13:32:05

2013-12-03 10:04:04

Windows更新代號Windows 8.1

2023-11-16 14:00:23

iOS 17.2蘋果

2021-12-07 08:27:19

RTTI運(yùn)行類型

2022-05-10 08:49:46

設(shè)備驅(qū)動Linux

2023-03-30 07:34:10

Linux性能數(shù)據(jù)結(jié)構(gòu)

2021-04-05 09:32:37

新冠疫苗惡意軟件Emotet

2014-09-02 10:51:19

IT技術(shù)支持職場

2014-11-17 09:36:45

2020-04-15 10:28:57

QQ騰訊更新

2016-05-13 16:15:05

CDN/星域CDN
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

99九九视频| 伦理一区二区三区| 九九久久综合网站| 性欧美xxxx大乳国产app| 日本a√在线观看| 精品国产乱码久久久久久图片| 欧美人体视频| 国内外免费激情视频| 欧美精品自拍偷拍| 欧美日韩国产精品一区二区亚洲| 中文字幕免费中文| 91精品国产免费久久久久久| 99re热视频这里只精品| 国产精品久久久久77777丨| 自拍偷拍亚洲色图欧美| 日本美女一区二区三区| 新呦u视频一区二区| 一精品久久久| 国产激情一区二区三区在线观看| 寂寞少妇一区二区三区| 亚洲一区二区在| 欧美高清一级片在线| 久久动漫亚洲| yellow91字幕网在线| 欧美日韩国产精品一卡| 亚洲成人av在线播放| 九色综合国产一区二区三区| jizzyou欧美16| 粉嫩虎白女毛片人体| 国产精品久久久久久久久久久久久| 亚洲午夜精品网| 久久综合婷婷| 久久亚洲精品中文字幕| 久久99爱视频| 亚洲一区二区三区乱码aⅴ蜜桃女| 在线免费不卡视频| 久久99精品久久久久久国产越南 | 欧美日韩亚洲在线 | 久久久亚洲欧洲日产国码αv| 天堂久久av| 黄色片在线看| 亚洲成人自拍视频| 色吧影院999| 亚洲电影第三页| 日韩电影在线一区二区| 97se亚洲| 午夜成年人在线免费视频| 国产熟人av一二三区| 成人免费激情视频| 亚洲护士老师的毛茸茸最新章节| 中文字幕av不卡| 免费精品视频| 国产一区二区三区四区五区传媒 | 日韩免费在线观看av| 7777精品久久久久久| 欧美一级片在线看| 久久婷婷色综合| 视频一区国产视频| 欧美猛男同性videos| 一二三四视频在线中文| 午夜刺激在线| 霍思燕三级露全乳照| 国产乱码精品一区二区三区日韩精品 | 国产成人综合在线| 午夜日韩福利| 精品一区免费| av免费在线一区| 岛国成人毛片| 国产中文字幕在线| 三上悠亚一区| 一区二区三区网址| 中国丰满人妻videoshd| 国产麻豆电影在线观看| 成人免费视频视频在| 国产精品久久久久福利| 色综合久久中文字幕综合网小说| 国产一区二区三区在线播放免费观看| 欧美色欧美亚洲另类二区| 粉嫩老牛aⅴ一区二区三区| 亚洲黄色性网站| 亚洲欧洲日韩一区二区三区| www国产精品av| 欧美国产视频在线| 成人a'v在线播放| 91网页版在线登录入口| 国产污污在线观看| av网站在线看| 精品视频国内| 日本欧美一区二区| 亚洲国产一区二区在线播放| 亚洲精品久久久久中文字幕二区| 国产福利精品av综合导导航| 国产一级黄色录像片| 视频二区在线| 韩国三级成人在线| 久久er精品视频| 色婷婷综合久久久久中文 | 日本三级黄色网址| 3344国产永久在线观看视频| 另类激情视频| 日韩黄色大片| 成人综合在线观看| 欧美亚洲精品一区| 97在线精品国自产拍中文| 久久婷婷开心| 欧美18—20岁hd第一次| mm视频在线视频| 亚洲大片精品免费| 久久精品国产成人一区二区三区 | 99久久精品99国产精品| 色婷婷久久久久swag精品| 久久久精品久久久| 欧美一区二区视频在线| 成人永久免费网站| 校园春色亚洲色图| 99久久亚洲精品| 中文天堂在线一区| 久久九九国产精品怡红院| 欧美日韩dvd| 国产乱子伦农村叉叉叉| 欧美女v视频| 亚洲自拍都市欧美小说| av亚洲精华国产精华精华| 欧美r级在线观看| 69堂成人精品视频免费| 含羞草激情视频| h视频久久久| a亚洲天堂av| 亚洲精品一区二区三区精华液| 国产精品激情av在线播放 | 欧美二区在线看| 欧美日韩在线精品一区二区三区激情综 | 日本视频在线观看一区二区三区 | 色婷婷视频在线观看| 日韩国产在线不卡视频| 精品一区视频| 亚洲午夜av久久乱码| 国产一区不卡在线| 天天操夜夜操国产精品| 国产一区二区三区久久悠悠色av| 欧美唯美清纯偷拍| 91精品久久久久久久久久| 1pon在线| 国产影视精品一区二区三区| 国产精品久久99| 美女999久久久精品视频| 日韩精品视频一区二区在线观看| 伊人色综合一区二区三区影院视频| 亚洲免费网站| 精品成人在线观看| 91手机视频在线| 91成人在线| 中文字幕精品一区二区精品绿巨人| 久久91亚洲人成电影网站| 亚洲综合欧美激情| 成人亚洲一区二区三区| 亚洲欧美偷拍自拍| 日韩精品专区在线影院观看| 99久re热视频精品98| 综合久久av| 依依成人综合视频| 精品综合在线| 涩涩视频免费网站| 久久日韩视频| 青草青在线视频| 国产高清日韩| 精品一区欧美| 麻豆91在线看| 色综合久久中文综合久久97| 日韩一级欧美一级| 久久久91精品国产| 成人天堂av| 狠狠入ady亚洲精品| 亚洲另类图片色| 国产女主播在线| 久久97超碰国产精品超碰| 欧美乱妇高清无乱码| 国产大学生校花援交在线播放| 日韩精品一卡二卡三卡四卡无卡| 综合网中文字幕| 久久经典视频| 波多野结衣91| 国产精品久久久久久久久久久久午夜片| а√天堂中文在线资源8| 亚洲欧美日韩国产手机在线 | 欧美色综合久久| 一女被多男玩喷潮视频| 国产精品毛片一区二区在线看| 国产视频丨精品|在线观看| 超碰在线人人| 久久久久久一二三区| 亚洲综合五月天| 韩日视频一区| 国产成人91久久精品| 秋霞在线观看av| 欧美大片网址| 久久草av在线| 日韩精品一区二区三区视频在线观看| 超碰10000| 久久精品123|