天天看點

從蘋果供應鍊談何為雲計算的業務永續

從蘋果供應鍊的業務永續說起

每次蘋果出新機,全球各地旗艦店就大排長龍統一發售,堪稱全球化的一景。有沒有想過,iphone是怎麼保障全球消費者能在一天内買到幾百萬部手機的?

很簡單:同時用多個供應商。蘋果供應鍊非常發達,僅組裝廠全球就有18家,如富士康7家、廣達3家、和碩2家。而在每個零部件環節也都會有多個供應商支援(用了哪幾家供應商都成了新聞)。并在産品層面采取了統一标準,確定哪怕地震、洪水也能按時傳遞同樣品質的産品。

反過來說,一些較小的手機廠商經常因為“泰國洪水”、“日本地震”、“台灣斷電”而無法正常發貨。

用網際網路行業的話來說,蘋果做到了“業務永續”。而其他手機商出現了典型的“單點故障”導緻的“停擺”。

小結:供應鍊出現問題就會影響到品牌形象。是以業務永續是你和客戶之間的約定,“多個供應商”是你做到這個約定的手段之一。

而方法呢?業務永續首先是架構設計層的職責。盡可能消除單點故障風險,做好關鍵節點的備援。換成人話就是:想好可能出現問題的地方,做好準備,比如說多備點存貨,用多個供應商,避免出現一個天災人禍你就跪了的局面。

雲計算故障了,但為什麼有的網站沒挂

供應鍊不是制造業獨有的,網際網路行業也是如此。雲計算可以看作是很多公司的供應商,當他當機時,有很多公司也會受到影響。

比如說,去年aws弗吉尼亞節點當機,導緻包括netflix、airbnb、product hunt、medium、socialflow、buffer、groupme、pocket、viber和亞馬遜echo等停擺。而國内雲計算廠商也遭遇過雷擊、挖掘機、斷電等多種問題。

雲計算出現當機當然是導緻網站停擺的導火索,持續提高穩定性是雲計算公司該承擔的責任沒跑。但大部分人沒有看到的是,同樣是這個節點故障,卻還是有很多網站并沒有挂掉。真正該問的問題是,為什麼有的挂了而有的沒挂!

“因為不僅僅是在弗吉尼亞有伺服器,一出問題我就切到另一個節點了。”狡兔三窟的客戶都是這麼回答的。“雲計算廠商隻承諾全年99.999%的時間是可靠的,剩下的時間要看運氣了。如果我隻是依賴一個節點,他挂我就一定會挂掉,就會影響品牌形象。”

可能會出問題的就必然會出問題,這就是墨菲定律。除了自己應用層的可靠性,在基礎資源上索性就在不同的“可用區”(az)、“地域節點”(region)都做一些部署。一些大型的公司甚至是在不同的雲計算廠商之間都做了準備。

雲計算公司為什麼不做“異地多活”

還有人好奇,為什麼aws和阿裡雲會出問題?雲計算不也是“異地多活”嗎?

這裡有個緻命的錯誤,雲計算行業尤其是iaas層一般會提供一個可用性名額(sla),例如說99.999%,即承諾全年有這個機率是可用的。而比如淘寶為了實作業務永續做了一個技術方案“異地多活”,這是他對于自己消費者的承諾(保證買買買不停)的實作手段。淘寶用了多個99.999%的節點同時運作,隻要不是這些節點同時挂,他就不會挂。(不用說,難度很高也很貴)

他們之間的關系是:消費者——》亞馬遜網站、淘寶——》(雲計算1+雲計算2+雲計算3)。雲計算123随意挂掉一個都不會影響業務的穩定。

也就是說靠譜的雲計算廠商會告訴你自己服務能力的邊界和極限是什麼,使用它們的時候要根據他們的能力來規劃自己的業務設計,以達到自己的業務永續。

打個比方,你把女朋友的照片同時放在icloud、電腦、移動硬碟裡,隻要不是3個同時丢失,你女朋友的照片就不會丢。但如果隻存了一個地方,不幸又丢失了,那你說該怪誰?

總結:

1、業務永續是你和客戶之間的約定,“高可用性”首先是架構設計層的職責

2、雲計算行業不存在“異地多活”的說法,一般隻承諾99.999%的可用性(sla)

3、但你可以用多個雲計算節點來設計出100%業務永續的方案

關鍵看你有多關心使用者,錢有多少。

繼續閱讀