《原神》上線前,米哈遊與阿里雲的八年

賈寧宇發表於2020-12-29
《原神》上線前,米哈遊與阿里雲的八年

在米哈遊的辦公區,有一間會議室,專門留給了阿里雲工程師。

今年,是這家二次元文化公司創立的第九年,米哈遊和阿里雲的交情,也有八年了。

米哈遊總裁劉偉還記得多年前,王堅博士帶著八位公司高管和負責團隊抵達米哈遊的辦公室時的情景。那天,在米哈遊租用的小小的辦公區中,只有30多個工位,甚至沒有一間會議室,能同時容納這十來名訪客。

那時米哈遊創立不久,阿里雲也還在對外服務的起步階段,兩個初出茅廬的小兄弟機緣巧合走到了一起,彼此摸索著前行。那一天,王堅博士講了這樣一段話:“如果客戶坐著飛機在天上飛,我們只在地上看,是很容易出故障的。要做,我們就和客戶一起在天上飛。”

臨走時,王堅博士將自己的手機號寫給了劉偉,他說,有任何問題,直接打電話給我。許多年過去了,所幸,這樣的一通電話從未撥出去。而阿里巴巴核心系統也早已實現100%上雲,驗證了那句“和客戶坐在同一架飛機上”。

時間一晃而過。2020年9月,在米哈遊與阿里雲並行的第八年,這家二次元文化公司上線了最新的代表作《原神》,全球五大區服,完全承載在阿里雲上。

在這一年年底,《原神》像遊戲行業的一匹黑馬,熱度節節上升。11月30日,谷歌將Google Play2020年度最佳遊戲頒發給了《原神》;僅一天後,蘋果又將App Store 2020 iPhone年度遊戲交給了《原神》——這可能是中國遊戲首次獲得“雙冠”殊榮。

在這一年,阿里雲也早已從當年的小兄弟成長為雲端計算行業的領軍者,成為許多行業的數字化底座,也為許多中國遊戲企業提供服務。

從“相信”開始

回到2012年,米哈遊剛剛做出二次元遊戲《崩壞學園》。

那一年,手遊市場還處於起步階段,動漫遊戲更是開發者寥寥,環顧App Store,沒有幾個成型的手機動漫遊戲。但在米哈遊心裡,未來的遊戲市場,一定有國產動漫的一席之地。

巧合的是,雲端計算的行業階段和動漫遊戲有些類似。作為一個新生技術,中國的雲端計算行業起步不久。但米哈遊和阿里雲都有著一個關於未來的夢想。沒有人知道未來如何抵達,“相信”就是唯一的路徑。

傳統IT時代,遊戲公司的做法是自己購買伺服器、自建機房、配置運維人員。這樣斥巨資才能啟動的重模式,將許多有想法的創業者擋在了遊戲行業的門外,在那個時期,研發遊戲幾乎只能是大公司的專利。

雲端計算帶來了一個新機會——跳過一切前期的IT設施投入,直接在網頁上點點滑鼠,就能呼叫雲算力,這幾乎是為米哈遊這樣的創業團隊量身定製的完美產品。

《原神》上線前,米哈遊與阿里雲的八年
米哈遊創始團隊早期合影

“崩1”上線時,使用了阿里雲的兩臺雲伺服器,小小的嘗試,開啟了米哈遊的“雲上之旅”。

回顧起來,米哈遊可以說是一代網際網路創業企業的代表,誕生在雲端,所有業務都在雲上,率先感受著雲端計算高彈性、高併發、低成本等種種特色,堪稱“雲原生企業”。也正是這一代“雲原生企業”的快速成長,推動著中國雲端計算的發展與普及。

2016年,米哈游上線了第三款遊戲:《崩壞3》。但在此時,米哈遊仍只有兩名運維人員——在傳統自建伺服器機房的時代,這幾乎是不可想象的。

作為早期雲端計算的“吃螃蟹”使用者,米哈遊踩過坑。

“問題是很難避免的,關鍵是能不能解決問題。”米哈遊的技術負責人劉霄回憶說。

一年年過去,米哈遊也漸漸成長起來,從3個人到幾十人,再到幾百、上千人,不再是那個沒有會議室的小團隊。米哈遊也為阿里雲工程師們專門留了一間會議室,對他們說,“隨時來、隨時用”。

“取道”阿里雲,安全出海

起初,米哈遊規模尚小,在擴充海外市場的過程中也遇到了一些波折。“所幸當初規模小,使用者不算多,這件事的負面影響還能控制。如果是在“崩3”、《原神》這樣規模的遊戲上,那損失就不可估量了。”回想起來,劉霄還有些後怕,“所以應該說,對於大部分遊戲公司,雲就是最好的選擇,沒有之一。”

2016年,米哈遊正式開啟全面“出海”。在海外服務區,《崩壞3》最初選擇了一家海外雲服務商,卻遭遇了幾次黑客的DDOS攻擊,更有一次甚至影響使用者正常訪問。

這是一種非常惡意的網路攻擊方法:黑客在短時間內向伺服器發起大量請求,造成網路擁塞,導致正常使用者無法訪問。

舉個更形象的例子,比如一家容納100人的餐廳開業了,隔壁餐廳看著不高興,僱了150個小流氓湧入這家餐廳,光坐著不吃飯,把所有空間佔滿了,結果,想來吃飯的普通客人都進不來。

為了防禦攻擊,米哈遊還曾購買了額外的安全防護服務,由於技術支援和溝通效率問題,狀況沒有及時得到改善。

苦惱中,米哈遊想起了阿里雲,與阿里雲工程師們合計一番,想出了一個方法,將玩家請求先通過阿里雲高防IP,經過流量清洗後,再轉回原機房,從而抵擋了上百GB的DDOS攻擊。

困擾米哈遊許久的問題,一舉就被解決。

時間已經走到了2017年。經過幾年努力,阿里雲在全球的基礎設施也越建越多,在那一年底,阿里雲在全球擁有17個區域、53個可用區,遍佈亞、歐、美各地。對於米哈游來說,此時此刻,應該是將“崩3”全部遷至阿里雲的最佳時機了。

後來,在籌劃《原神》時,米哈遊沒有再猶豫,《原神》的全球資源,全部直接上阿里雲。截至目前,曾經遭遇的海外黑客攻擊,未在《原神》上出現過。

《原神》,一個前所未有的挑戰

《原神》,是米哈遊和阿里雲共同面臨的一次巨大挑戰。

《原神》的規劃有多巨集偉?這不僅是一款開放世界遊戲——意味著龐大的地圖和人物畫面、複雜的關卡設計和故事情節。

《原神》上線前,米哈遊與阿里雲的八年

更有難度的是,米哈遊想做一款多平臺、全球同步公測的遊戲,也就是PS4、iOS、Android、PC等所有遊戲平臺,和全球五大服務區,同時開服、同時上線,相同服務區內資料互通、無縫銜接。例如在手機上玩《原神》,切換到電腦上,玩法和進度都可以無縫銜接。

而且,為了更好的聯機遊戲體驗,米哈遊採取的是“大通服”。大部分遊戲公司會採用“分服”的方式,一個區域內有很多個伺服器,玩家達到一定數量後再增加伺服器。但通服是將一個大區的所有使用者都放在同一個伺服器叢集上,玩家的線上數驟增。

也就是說,等到《原神》上線的那一天,全球、全服的使用者一起湧入,一時的PCU(最高線上玩家人數)可能會遠遠超出日常預估。

如果米哈遊能設計出這樣一款產品,那麼,面對這樣高併發、高效能、高彈性的技術需求,阿里雲能支援嗎?

有些人感到忐忑,但是米哈遊一如既往地選擇了阿里雲。這種信任源自於雙方多年的合作。米哈遊對阿里雲太熟了,這些年,他們看到了阿里雲支撐著淘寶天貓度過了一次次雙十一,每一年,阿里雲支撐的計算峰值都會再高一些,“雖然我們不是電商,但遊戲和技術對於高併發的需求非常相似,從雙11來看,我們相信阿里雲的技術能力是足夠的”。

他們也看到了阿里雲在快速地進步。2017年,阿里雲上線了自研資料庫PolarDB,能夠提供分鐘級的配置升降級、秒級的故障恢復、全域性資料一致性和資料備份容災服務。

對於米哈游來說,原本在使用老式的資料庫時,備份資料耗時幾個小時,遊戲不得不停服一個多小時;而在PolarDB上,備份工作能夠被縮短至秒級,大大減少了資料備份的耗時,提升了版本更新效率。

2020年7月,《原神》同時在PS4、iOS、Android、PC平臺開啟最終內測,進入了衝刺階段。

歡迎來到提瓦特大陸

阿里雲的工程師們又來到了那間熟悉的會議室。

在最後衝刺的這兩個月中,他們再次成為這裡的常駐者,“把《原神》當作阿里自己的專案來做”。

阿里雲多年累積的能力,成為《原神》巨集大設想實現的技術基礎。

比如,被工程師們稱作“一套架構,全球部署”的資源保障能力,簡單說,在全球不同的服務節點上,阿里雲從基礎層到資料庫的一套架構產品,包括雲伺服器、網路資源、儲存、安全、資料庫等等,都採用了同一套架構,提供相同的效能體驗。

這為《原神》“全球同時開服”的需求提供了基礎保障,意味著,米哈遊在全球也只需要搭建一套架構,而不需要每到一個服務區就因地制宜地改一次架構;同時,相同的效能,確保了全球五大區能夠給予玩家們統一的遊戲體驗,不會造成某些功能只有特定區域有、另一些區域缺失的情況。

再比如, PolarDB在滿足《原神》高效能遊戲資料庫需求的同時,又憑藉著完善的產品封裝形態,降低了米哈遊在IT運維上的投入,可以讓全部人馬專注在遊戲本身。

“我們就專心做遊戲上設計,這些基礎的IT工作,基本都交給阿里雲了。”劉霄總結說。

這是阿里雲在遊戲領域最大的一次全面實戰。《原神》對阿里雲技術的一些需求,即使已在不同客戶、不同領域實踐過,但這樣一次性挑戰所有高難度動作的專案,還是第一次。

從全球部署和預約量來看,上線後,《原神》將成為全球在雲上規模最大的遊戲——幾個月後,這成為一個事實。

所以,連阿里雲熟悉的“熱遷移”,在《原神》上都要進一步升級。熱遷移,意為將整個虛擬機器的執行狀態完整儲存下來,同時快速恢復到原有或其他硬體平臺上,同時,使用者在使用層面不會察覺到任何差異。

通俗點說,這有點類似於行駛在高速公路上的汽車發動機出現報警,需要不停車完成更換。如果說“換汽車發動機”是一般狀態,那麼,在《原神》上,就是一次給空中的超大型飛機換髮動機的過程,而且,由於遊戲對穩定性的極高要求,更換過程中,“飛機”不能有絲毫的抖動和偏移。

需求從米哈遊的會議室裡傳遞迴阿里雲的飛天園區,從遊戲業務傳遞到虛擬化業務,不同部門的工程師聚在一起想方法,摸索出一套通過智慧運維繫統對底層效能進行調整,實現在超高QPS、高CPU和記憶體負載場景下的無損“AI熱遷移”方法。

“AI熱遷移”應用在《原神》上,迄今為止,效果非常明顯。

最後兩個月中,《原神》的預約量節節攀升,對伺服器的需求也越來越高,伺服器一次次擴容,終於,完成了幾十次擴容並連夜進行了壓力測試後,工程師們感覺到,這次,成了。

《原神》上線前,米哈遊與阿里雲的八年
9月28日,阿里雲團隊在提瓦特會議室

9月28日,《原神》全球同步公測開啟。10點,正式上線,那間會議室裡,阿里雲的20多名工程師緊盯著大屏上的各個指數,一個又一個峰值出現。

最終,PCU峰值達到了某一個數值,高於所有人的預期,但云穩穩扛住了壓力。就像之前已經進行過的無數次壓測一樣,順利,平靜。

門外,貼著這間會議室的名字:提瓦特。

在提瓦特大陸上,被神選中的人將被授予“神之眼”,這些人被稱為——原神。


來源:Tech星球
原文:https://mp.weixin.qq.com/s/tSUctMh76pZUp_fB-jGOUQ

相關文章