国产爱久久久精品_看**视频一一级毛片_91啪国自产中文字幕在线_国内精品伊人久久久久妇

網絡消費網 >  IT > > 正文
每日快播:B站自曝去年服務器大崩潰原因 就因為這?
時間:2022-07-20 05:34:04

不知道差友們還記不記得,去年的 7 月 13 日,B 站發生了一件大事。它毫無征兆的崩了。。。( 如果忘了的小伙伴,可以看這篇文章)

至于為啥崩了,當時大家誰也心里沒個底。不過吹起水來可是一套一套的,什么停電啊,起火啊,程序員 rm -rf /* 跑路啊。。。說的是個天馬行空。

后來呢,隨著 B 站在凌晨兩點一頓修仙,把服務器問題給慢慢解決,這件事情也算是告一段落了。


【資料圖】

本以為這次 B 站崩了會和微博上無數崩了的網站一樣,成為我們沖浪生活中的一個笑談,僅留下一個大會員給我們“ 緬懷 ”。

沒想到在今年的 7 月 13 日,B 站特意發了一篇文章,刨開心窩子來給我們講了一講,那個晚上,到底發生了什么。

咱也看了一下這篇文章,好家伙,讓整個 B 站崩潰的原因,竟然只是一行代碼沒寫好???借著這篇文章,世超準備帶大家從B 站的角度來回顧一下這件事情。放心,不會有生澀難懂的名詞,不會有犀利糊涂的黑話,保證小白也能看明白。 案情回溯:意外,發生在 2021 年 7 月 13 日的 22 時 52 分。

負責搞定站點可靠性的工程師(SRE)和B站的客服都收到了大量網站打不開的報警。

而負責處理這些事故的同事已經下班了,當即準備在家里通過 VPN 來登錄公司內網處理這些問題。

結果發現VPN也崩了。。。壓根進不去系統。最后,還是在公司的整了個 “ 綠色通道 ” 才成功進去。你說這綠色通道不會是向日葵吧(一種遠程桌面軟件)

而在綠色通道成功打通,負責各種業務的團隊就位之后,B 站也開始對問題進行分析定位。出問題的模塊也很明顯,在線業務主機房的7層 SLB(負載均衡服務器,用來處理多用戶,多業務的情況)的 CPU 跑滿了 100%。

簡單來說,就是 CPU 被不知道哪里來的刺客給占用光了算力,沒法處理業務了。

系統未響應.exe▼

B 站最開始的嘗試方法呢,和咱們平時手機電腦卡機后做的操作一樣。

重啟就完事了,要相信重啟能解決 90% 的問題!

但很可惜,B 站這次是那個 10.5%。

說業務恢復了嘛,也沒有,主機房重啟后還是出現了CPU 跑滿 100%的問題。不過別的機房好起來了,雖然會卡,但是沒出現 CPU 跑滿的問題。

有一部分做了多活的業務(多站點同時提供服務)開始慢慢恢復。所以。。。重啟不能完全解決問題,但是這個問題既然過去沒出現過。

那會不會是新加入的代碼問題呢?隨著時間在一分一秒的過去,借助分析工具的幫助,問題被定位到了最近新上線的 Lua(一種編程語言,類似 Python,Java 這些)函數上。

隨后,B 站開始進行了一波波緊張的回滾操作。

這一通工作弄下來,雖然好像找到幾個疑似出問題的部位,但服務器還是該掛掛,距離 “ 康復 ” 還有那么一些距離。

沒辦法,總得讓業務先跑起來吧。于是團隊開始兵分兩路。一隊繼續堅持排查問題,尋找原因,另一隊則是開始重建一個新的 SLB 服務。

在緊張刺激的一小時后,新的 SLB 配置成功,原本導向主站的流量也慢慢的開始遷移過去。

好在這次行了。

凌晨兩點,在崩潰了三小時之后,B 站的業務總算得到了恢復。罪魁禍首:上面這些,就是那個晚上 B 站發生的故事,雖然解決了表面問題,讓業務恢復了。

可是最根本的原因是啥呢?如果不找到根因,那遲早會二度暴雷。

負責排查問題的同學也沒讓人失望,在時間壓力大大放緩之后,找出了真相。沒有外星人,沒有起火,沒有斷電,和網友們想象的大相徑庭。B 站這次崩的根因,僅僅是因為一個求最大公約數的函數沒寫好。。。

咱先盤一下這個 “ 萬惡之源 ” 哈。

這是一個典型的 “自己調用自己 ” 的遞歸函數。a b兩數字輾轉求余,直到b 等于 0的時候函數終止。不然這個函數就會自己調用自己,重新再跑一遍。

看上去好像是一點點問題都沒有,既明確了遞歸的終止條件(b = 0),也沒有太多復雜的邏輯處理。但是既然事情能發展到這地步。。。那就說明是出大問題了。對編程有些了解的差友可能發現了不對:

你傳進去的 0,是個什么 0?沒錯,在編程語言里,數字 0 和字符串 ‘ 0 ’并不算是一個東西。為了防止呆呆的計算機語言把事情給搞混,像 C 語言,Java 這些靜態語言都會要求我們在創建新變量的時候聲明這個變量的類型。

搞清楚它到底是整數,還是小數,或者是一個字符。然而 Lua 是個非常智慧的語言,它沒有這個要求。麻煩的臟活累活讓它自動來做就好了,Lua 會根據程序的需求自動分配變量類型。

C語言示例:# 定義一個整型數據a,為它賦值1# 定義一個字符串數據b,為它賦值‘1’int a = 0;char a = "0";Lua示例:--定義 a 為數字0,b為字符串‘0’a = 0b = "0"

所以,我們給參數 b 傳進去的數值,是數字 0呢,還是字符 ‘ 0 ’?一旦前面數據驗證沒把好關,在執行某個功能的時候,把字符 ‘ 0 ’給傳到了這個函數里。

地雷就被引爆了。字符串‘0’不會等于數字 0,函數的終止條件判斷不通過。

所以程序進入遞歸模式,再次調用自己。在后續進行求余預算的時候,Lua 的 “ 智慧 ” 又突然起到了作用。Lua 一拍腦袋,咋會有人把字符 ‘ 0 ’ 拿來做計算啊,肯定是想把這個參數當數字用。

于是發生了強制類型轉換。

所以咱們小學數學都會學到的。。。把 0 當除數的事情就發生了。這要是古老的大哥 C 語言來干這活,可能直接就給一個 Floating point exception 報錯了。但是 Lua 不一樣,作為一個新時代的 “ 智慧 ” 的語言,它會優雅的返回一個 nan(Not A Numbewr)。

程序,繼續運行。更要命的是,nan 也不會等于0。。。程序的終止條件無法實現。這樣跑幾個循環之后,原本用來計算 a 和 b 的最大公約數的函數 _gcd(a,b) 就變成了一個停不下來的函數 _gcd(nan,nan)。

在停不下來的路上根本停不下來,直接把 CPU 資源給吃滿了。

太聰明也不是一件好事啊。。。

就這樣,被占滿的 CPU 一口氣把別的業務也帶崩了。還得前面提到的在家的 B 站程序員沒法在家通過 VPN 來搶救網絡么?沒錯,他們登錄內網的時候,其中有部分服務也需要通過內網來處理。。。

屬于是把鑰匙斷鎖眼里,也是崩的理所當然了。崩完之后:最后,如果差友們對相關技術細節更感興趣的話,世超建議你看看 B 站發布的這篇2021.07.13 我們是這樣崩的除了對事故的起承轉合,還對未來技術的更進與反思都做了更加專業,全面的總結。

講道理,這樣的機會其實挺難得的。每年崩了的應用何其多,但是愿意發出來給同行學習,給普羅大眾看個樂子的寥寥無幾。

向上滑動▼

B 站這次愿意分享,直面自己的 “ 傷疤 ” 。也讓我們看到了互聯網運維上最真實的一面。這些經驗,可不會寫在任何教科書上。哦對,這篇文章發出來的晚上,B 站其實又偷偷小崩了一次。。。

不知道是不是團隊好好總結了去年經驗的緣故。這回還沒等大部分人反應過來。。。B 站已經把問題給解決了。

關鍵詞: B站自曝去年服務器大崩潰原因 就因為這

版權聲明:
    凡注明來網絡消費網的作品,版權均屬網絡消費網所有,未經授權不得轉載、摘編或利用其它方式使用上述作品。已經本網授權使用作品的,應在授權范圍內使用,并注明"來源:網絡消費網"。違反上述聲明者,本網將追究其相關法律責任。
    除來源署名為網絡消費網稿件外,其他所轉載內容之原創性、真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考并自行核實。
熱文

網站首頁 |網站簡介 | 關于我們 | 廣告業務 | 投稿信箱
 

Copyright © 2000-2020 www.fnsyft.com All Rights Reserved.
 

中國網絡消費網 版權所有 未經書面授權 不得復制或建立鏡像
 

聯系郵箱:920 891 263@qq.com

備案號:京ICP備2022016840號-15

營業執照公示信息

国产爱久久久精品_看**视频一一级毛片_91啪国自产中文字幕在线_国内精品伊人久久久久妇

        午夜精品视频一区| 蜜臀av在线播放一区二区三区| 日本aⅴ精品一区二区三区| 国产福利一区在线| 中文字幕免费不卡| 在线精品观看国产| 国产欧美一区二区精品秋霞影院| 亚洲成人一区在线| youjizz国产精品| 一区二区三区国产豹纹内裤在线| 91精品欧美福利在线观看| 国产精品麻豆视频| 韩国女主播一区二区三区| 国产精品久久影院| 欧美顶级少妇做爰| 一区二区三区精品久久久| 成人国产精品免费观看视频| 亚洲精品国产a久久久久久| 日韩免费一区二区三区在线播放| 亚洲一区二区三区视频在线播放 | 91久久奴性调教| 亚洲国产精品精华液2区45| 麻豆精品在线观看| 国产精品日韩成人| 欧美一区二区三区思思人| 亚洲一区二区黄色| 91视频www| 欧美日韩一区在线观看| 亚洲免费观看高清完整版在线观看熊 | 亚洲男人天堂一区| 欧美电影精品一区二区 | 亚洲综合色网站| 久久精品一区二区三区av| 久久狠狠亚洲综合| 亚洲视频在线一区| 久久久亚洲高清| 狠狠狠色丁香婷婷综合激情| 日韩理论片中文av| 337p日本欧洲亚洲大胆色噜噜| 男人的天堂久久精品| 国产精品久久99| 精品欧美一区二区久久| 蜜桃精品视频在线| 亚洲免费电影在线| 国产农村妇女毛片精品久久麻豆| 国产综合久久久久久鬼色| 亚洲一区二区三区自拍| 中文av一区二区| 成人性色生活片免费看爆迷你毛片| 亚洲国产精品视频| 亚洲啪啪综合av一区二区三区| va亚洲va日韩不卡在线观看| 欧美日韩一区小说| 午夜欧美电影在线观看| 国产精品高潮久久久久无| 久久欧美一区二区| 丁香桃色午夜亚洲一区二区三区| 色婷婷国产精品综合在线观看| 亚洲欧洲综合另类在线| 久久久久久麻豆| 欧美mv日韩mv亚洲| 狠狠色丁香久久婷婷综| 亚洲不卡av一区二区三区| 亚洲人成小说网站色在线| 久久久久久久久久久久久女国产乱 | 国产丝袜欧美中文另类| 日韩欧美在线观看一区二区三区| 美女在线视频一区| 亚洲一二三四在线观看| 亚洲乱码国产乱码精品精可以看 | 国产日韩精品视频一区| 成人毛片在线观看| 91精品在线麻豆| 久久国产夜色精品鲁鲁99| 五月婷婷综合在线| 亚洲777理论| 一区二区三区 在线观看视频| 亚洲图片另类小说| 亚洲国产精华液网站w| 国产三级精品三级| 91一区在线观看| 2022国产精品视频| av在线播放成人| 日韩午夜激情视频| 国产亚洲自拍一区| 91在线一区二区三区| 精品免费国产一区二区三区四区| 国产精品白丝jk白祙喷水网站 | 久久99国产精品久久| 一本大道av一区二区在线播放| 亚洲va国产天堂va久久en| 亚洲激情在线激情| 亚洲一区二区影院| 亚洲综合在线免费观看| 亚洲亚洲精品在线观看| 亚洲综合色噜噜狠狠| 亚洲国产乱码最新视频 | 91精品国产综合久久小美女| 国产曰批免费观看久久久| 91国内精品野花午夜精品| 蜜桃视频第一区免费观看| 亚洲国产成人porn| 午夜在线成人av| 图片区小说区区亚洲影院| 秋霞成人午夜伦在线观看| 91国产成人在线| 国产一区二区日韩精品| 制服丝袜国产精品| 成av人片一区二区| 久久久久久久久99精品| 国产午夜精品久久| 亚洲欧美日本在线| 亚洲一线二线三线视频| 五月天国产精品| 欧美视频一区二区三区在线观看| 精品一区二区三区在线播放视频 | 亚洲品质自拍视频网站| 夜夜夜精品看看| 免费观看一级特黄欧美大片| 欧美日韩在线观看一区二区 | 日韩视频在线你懂得| 播五月开心婷婷综合| 国产欧美精品在线观看| 国产精品欧美久久久久无广告| 一区二区三区在线播放| 亚洲一区二区成人在线观看| 男女激情视频一区| 欧美一级搡bbbb搡bbbb| 国产成人免费视频一区| 久久久久国色av免费看影院| 久久精品夜色噜噜亚洲a∨| 亚洲欧美日韩中文字幕一区二区三区| 一区二区成人在线观看| 麻豆精品一区二区综合av| 日韩欧美不卡一区| 欧美极品少妇xxxxⅹ高跟鞋| 欧美午夜精品免费| 国产成人精品网址| 国产清纯在线一区二区www| 亚洲三级在线免费| 日韩成人免费电影| 日韩天堂在线观看| 国产精品久久久久影院色老大| 国产欧美日韩激情| 亚洲一区影音先锋| 国产美女av一区二区三区| 久久久国产精品午夜一区ai换脸| 亚洲国产精华液网站w| 三级精品在线观看| 日韩一级片网站| 国产精品亲子伦对白| 亚洲大片免费看| 91麻豆精品91久久久久同性| 久久男人中文字幕资源站| 一区二区三区小说| 欧美精品 日韩| 国产日韩精品一区二区浪潮av| 亚洲日本电影在线| 欧美亚洲一区二区三区四区| 91蜜桃在线观看| 亚洲国产一区二区a毛片| 91麻豆精品国产91久久久资源速度 | 欧美国产一区在线| 奇米色777欧美一区二区| 精品不卡在线视频| 一区二区三区在线视频观看| 国产精品影视天天线| 亚洲欧洲精品一区二区三区| 欧美伊人久久久久久午夜久久久久| 337p粉嫩大胆色噜噜噜噜亚洲| 亚洲午夜一二三区视频| 日韩三级av在线播放| 亚洲免费观看高清完整| 国产精品99久久久久久宅男| 中文字幕日韩欧美一区二区三区| 欧美色综合影院| 国产精品污www在线观看| 精品一区二区三区在线观看| 国产精品毛片久久久久久久| 在线观看亚洲a| 欧美韩国日本综合| 国产在线观看免费一区| 中文字幕一区二区三区四区不卡| 欧美午夜精品电影| 国产精品国产自产拍高清av| 国产欧美视频一区二区| 91久久国产综合久久| 久久九九影视网| 狠狠色丁香久久婷婷综合_中| 日韩理论片在线| 91精品国产入口| 亚洲一二三级电影| 久久嫩草精品久久久精品| 裸体在线国模精品偷拍| 欧美极品美女视频| 欧美日韩大陆在线| 椎名由奈av一区二区三区| 国产不卡一区视频| 午夜影院在线观看欧美| 国产欧美一区二区三区鸳鸯浴|