技術 | 為何連雲計算霸主AWS也會掛?

本文作者:Peter Staff Engineer @ Hortonworks

著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。

2015年九月二十五日,就是周日凌晨太平洋夏令時間3點(北京時間周日下午6點)美國電商巨頭Amazon的AWS又掛了,這已經不是Amazon第一次掛掉了,2013年9月13日,2012年12月24日,2012年10月22日,2012年6月29日,2011 年 4 月 20 日,AWS都曾經掛過。

就在最近的2016年三月,連Amazon的零售網站也down掉了20分鐘。大型電商Amazon穩居在線零售業務的第一名,零售業的每一美元的增長,就有24美分是Amazon貢獻的。

Amazon的零售增長佔據整個零售業增長的一半。至於金錢損失,那就更多了。有人估算過,Amazon每一秒鐘會產生1084美元的收入,或者說Amazon的20分鐘的downtime,白白浪費了巨大的收入機會。

2011 年 4 月 20 日事故,大致原因是這樣的。

Amazon AWS 雲平台把數據傳輸分為兩類通道,傳輸內容數據的Data Channel 和傳輸控制信號的Signal Channel。AWS 對於每次的寫數據都要存備份,而備份地址是由 AWS 調度系統通過內部群發 Signal自動指派的。

如果第一次備份沒有成功,AWS 調度系統會再次群發 Signal,再找第二個備份節點。 AWS中的備份機器也是通過發送心跳signal來表示自己的有效。

AWS問題發生時,AWS 美東地區數據中心要搞維護,據說需要更換一批設備。更換設備時發生了突發網路擁堵事件, 這樣每個寫數據都要群發signal找備份機器,而備份機器的心跳signal由於突發網路擁堵沒有能按時到達,而由於心跳沒有到達所以每個寫數據又要群發signal找備份機器,而這些signal又堵塞了心跳到達時間。於是,雪崩開始了。

Amazon AWS 不僅僅被很多初創公司比如 Vine, Airbnb等使用,也被越來越多的大公司比如

NASA和netflix使用。當AWS掉線的時候,這些使用AWS的公司都會蒙受巨大損失。

此次事件表明,即便是全球最大的雲服務提供商也會發生重大故障。有些業務要求絕對無中斷,那麼,你也許需要向Netflix公司學習,自己掌控自己系統的可靠性。

----------------------------------------------------------------------------------------------------------

太閣CS208大規模電商平台設計實戰訓練營報名倒計時3天>>>學習並親手建立high availability (HA) and dynamic scalability分散式系統。

課程第一節視頻及詳細信息請戳:點擊鏈接

推薦閱讀:

可驗證隨機函數VRF之Algorand演算法
分散式系統設計的求生之路
分散式系統測試那些事兒——錯誤注入
如何解決分散式系統的Logical Time問題?(一)

TAG:AmazonWebServicesAWS | 分布式系统 | 计算机科学 |