技術圈重磅!餓了麼多活終於成功 實現首次多活生產環境全網切換

雲棲社區 阿里雲 HTTPS 阿里巴巴 集羣 平臺架構 淘寶 aliyun cto

摘要: 餓了麼CTO張雪峯表示,這只是一個開始,前方還有更難、更復雜的技術挑戰。「多活切換隻是技術10→100過程當中的第一步,可能還會伴隨局部抖動與新的坎坷。」他鼓勵餓廠全部技術同窗一塊兒拼——for Making Everything 30’,for 下一個九年!微信

北京時間5月9日消息,餓了麼CTO張雪峯,在朋友圈透露,餓了麼多活(Multi-Active IDCs/Regions)終於取得成功,實現首次多活生產環境全網切換(灰度)。網絡

這家外賣巨頭的CTO回顧到:「自去年八月決定作多活,歷經半年規劃、調研、設計、協調,又通過三個月全部技術團隊連續衝刺開發、改造及業務/產品/運營等兄弟團隊的鼓勵、支持甚至容忍,今晚,咱們終於作到了!」架構

張雪峯稱:「據我所知(如不許確,請指出並見諒),國內日均(非峯值或大促期間)訂單100萬以上的交易平臺,除阿里巴巴(包括螞蟻金服&菜鳥網絡)真正意義上實現了全網多活(不是雙活),迄今爲止應該尚未第二家能夠徹底作到。」app

「有些公司或許正在規劃中,有些團隊或許正在改造中,還有些或許正在經歷和餓了麼已經歷過的類似風雨與酸甜苦辣……」運維

那異地多活的最大挑戰在哪裏?張雪峯概括了兩方面難度:技術和實施。技術難度上,最主要是實時數據強一致性(尤爲外賣及配送這種即時性很強業務場景),包括 Cross-IDC DRC解決的app data strong consistency和Cross-IDC ZK Replication解決的config data strong consistency,而不管哪一種data replication,都必須解決循環複製問題。其中,餓了麼解決的Cross-IDC ZK Replication爲業內獨創,當初規劃、選型、設計時沒有任何大規模先例能夠參考。阿里雲

實施難度上簡單總結就是,必須全員all-in衝刺,任何一個環節滯後,結果確定是made nothing。張雪峯說:「給高速飛行(產品迭代)中的飛機換引擎,真不是鬧着玩的。」spa

對於中間歷程,他說,確實有太多酸甜苦辣。「技術團隊全部同窗承擔了‘再也不嘗試災備過渡,直接進行多活改造’的巨大壓力。好在,到今天爲止,咱們都挺過來了。」他認爲,全部付出的努力都是值得的,全部經歷的風雨,只爲從此的長治久安——由於多活就是最好的災備。設計

對於爲何要實施多活,2個月前,張雪峯在接受雲棲社區採訪時曾作過剖析:「主要是上雲後發現,事情比他們想象的要複雜的多——IDC和雲機房之間要拉光纖,不少事情須要配套。」在一次核心主備全掛後,張雪峯拍板,決定更進一步:實施多活。blog

據悉,餓了麼只用了三個季度搞定多活,而當年的淘寶則用了三年時間。爲此,在朋友圈,他除了列了一串名單感謝餓了麼內部員工,他也特別感謝外部人員。包括阿里雲(好多同窗,不一一列舉了)、畢玄(中國多活建設第一人)、阿里平臺架構部等。張雪峯說:「沒有你們,咱們沒那麼快走到這一天!」圖片

圖片名稱
張雪峯微信朋友圈

對於昨晚今晨的首次多活生產環境全網切換(灰度),餓了麼CTO張雪峯也表示,這只是一個開始,前方還有更難、更復雜的技術挑戰。「多活切換隻是技術10→100過程當中的第一步,可能還會伴隨局部抖動與新的坎坷。」他鼓勵餓廠全部技術同窗一塊兒拼——for Making Everything 30’,for 下一個九年!

相關閱讀:

  1. 餓了麼四次技術進化的曲折路,記訪談張雪峯
  2. 餓了麼運維負責人程炎嶺分享:餓了麼Redis Cluster集羣化演進
相關文章
相關標籤/搜索