把13億中國人拉到一個群會發生什麼?

後臺總有些腦洞大的朋友向我們提出奇奇奇怪的問題,比如前兩天就有人問——

把 13 億中國人民都拉到一個微信群裡在技術上能實現嗎?”……

聽到這個問題,全廠的人都炸了。要知道一個微信群最多隻能有500人啊,QQ群也只有2000而已。當你有機會加入一個2000人QQ群的時候,你就已經感受到“信息爆炸”的可怕……

13億人的微信群?Are you sure?

然鵝,鵝廠的工程師們的藝高人膽大,居然有人跳出來認認真真地做了回答。喏,就是下面這位開發小哥哥,他給出了一個知乎萬贊的回答,請好好欣賞他的靈魂作畫!

把13億中國人拉到一個群會發生什麼?

先說結論:也許可以實現,但你會什麼都看不見。

把13億中國人拉到一個群會發生什麼?

根據2017年《微信數據報告》的公開數據[參考1]:

2017年9月,微信日均登陸9.02億人,日均發送消息380億次

這意味著平均每人每天發送信息42條,如果全國人民(對了,現在全國人口已經接近14億)在同一個群裡說話,這個群每天出現的信息就高達:

把13億中國人拉到一個群會發生什麼?

這麼多信息僅僅是勻速發送的話,考慮到大家的睡眠,睡覺的8小時不算,那麼手機裡每秒要接收的信息就是:

把13億中國人拉到一個群會發生什麼?

哇塞,每秒超過100萬條啊!目前主頻最高的手機CPU之一,高通驍龍845有2.8GHz的處理能力[參考2],一共是8核。

如不計算安卓系統、顯示刷新、網絡IO等CPU操作的話,每條信息能分配到的計算能力是:

把13億中國人拉到一個群會發生什麼?

這是什麼概念?全球第一款微處理器是1971年英特爾推出的Intel 4004[參考3],這個老古董的主頻也有108KHz啊。所以21.9KHz就是啥也幹不了。

幸好IT界有個摩爾定律:每18個月CPU性能就能翻倍(或者價錢是一半)。雖然現有科技已經很難讓主頻提升(某牙膏廠拼命擠也只有5Ghz)。

但假設我們使用了黑科技提升主頻。等到了2025摩爾定律[參考4]失效時,我們的手機CPU主頻應該達到:

把13億中國人拉到一個群會發生什麼?

看起來不錯嘛,不過每條消息能得到的計算能力將達到:

把13億中國人拉到一個群會發生什麼?

呵呵,依然沒有達到Intel 4004的水平,所以結果就是你等了7年,還是進不了這個全國群搶一個紅包

把13億中國人拉到一個群會發生什麼?

好吧,咱們讓手機接入一個給力點的電腦, 比如說曾經全球超算第一名的太湖之光[參考5],用他的1千萬個CPU核心來幫忙處理這個宇宙第一大微信群。算力的問題算是有了著落。

我們假設平均每條消息有10個漢字,這大概相當於30 byte,算上應用層會加上一定的控制字符,再加上TCP/IP網絡層的數據消耗大概是74 byte,取個整,平均每條消息有100 byte。

而每個byte 相當於8個bit,所以這時每秒需要的網絡帶寬大約是:

把13億中國人拉到一個群會發生什麼?

這時千萬不要有人發紅包,否則需要的帶寬就更大了。

理論上,4G網絡能支持1000Mbps[參考6],但別忘了,是全國人民在同一個群裡,而你周圍的人也需要同樣的帶寬,這使得你附近的基站不堪重負,陷入癱瘓。

為了避免網絡癱瘓導致你搶不到紅包或者看群消息,你需要搬到一個周圍沒有人的基站,比如放暑假了全校只有你還沒回家的時候。

把13億中國人拉到一個群會發生什麼?

不過運營商的日子就不好過了,因為這一秒全國上下的流量就達到了驚人的:

把13億中國人拉到一個群會發生什麼?

這相當於2017 4月份的全國移動數據總流量的65.7%[參考7],同時意味著每18秒就能用完全國一年的流量 。運營商瑟瑟發抖.gif

如果把1.146Ebit數據用2TByte 3.5英寸硬盤(20mm高)裝起來,然後疊起來,有1433.25m,相比之下,全球最高樓——迪拜的哈里發塔只有區區828m。

把13億中國人拉到一個群會發生什麼?

當然,如果確實有需要,我相信電信運營商們肯定砸下重金為你建設全世界最大的寬帶網絡。

不過,接下來該花錢的就不是運營商——而是騰訊了。

為了處理這1.146Ebps 的流量,騰訊需要準備11466萬套交換機和服務器。

目前一臺大廠4口萬兆交換機售價大約是4000元,一臺便宜帶萬兆口的服務器則大概需要10000元,這兩項加起來的費用是:

把13億中國人拉到一個群會發生什麼?

呃,僅僅這兩項就相當於深圳2014年全年的GDP[參考8]。這裡還不包括網線、電線、服務器機架、機房託管、電費、運行支出……

況且,這麼多設備的存放也是個問題。一臺帶萬兆(10Gbps)口的2U服務器有88.9mm高,這樣疊起來就有:

把13億中國人拉到一個群會發生什麼?

這差不多是中國到美國的飛機航線距離啊,用來修鐵路也是夠夠的了。

把13億中國人拉到一個群會發生什麼?

好了,有了這麼多設備加持,這下你終於可以愉快地進了群。

但你驚訝地發現,屏幕上除了白色,什麼都沒有——這是因為你的眼睛沒辦法接收這麼快的數據!

人眼的視覺暫留時間是100-400毫秒 [參考9],而我們這個群每秒鐘就要顯示102萬條信息,每條消息停留的時間只有大概0.0001毫秒。相比之下,電影、電視都有41毫秒。

因此你還沒來得及看清消息,它就已經消失了,最後只留下一團白色的色塊在屏幕的正中央。

把13億中國人拉到一個群會發生什麼?


分享到:


相關文章: