Kubernetes 落地案例|將 Pokémon Go 運行到Google雲上

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

背景知識:

《Pokémon Go》是由任天堂、Pokémon 公司和Google Niantic Labs 公司聯合製作開發的現實增強(AR)寵物養成對戰類 RPG 手遊。——百度百科

這些年的工程師生涯中,我參與過很多產品的發布,這些產品一般都是慢慢地擁有了上百萬的使用者。通常,產品在發布幾個月後,產品新功能發布和架構都進行了調整,使用者量才會漸漸上升。但是在Google雲客戶 Niantic 發布 Pokémon Go 時,一切好像都沒有按照常理出牌,從中我體驗到前所未有的成長。

在技術社區,同行曾經詢問過支撐起 Pokémon Go 如此龐大使用者量的系統採用了什麼基礎設施。希望將 Pokémon Go 運行起來。所以,Niantic 和  Google 的團隊將支撐起 Pokémon Go(目前世界上最流行手遊之一)系統的關鍵組件總結到了這篇文章中。

 

共同的命運

在今天的 Horizon 活動中,我們會介紹Google CRE 給大家,這是一種新的參與模式,Google 技術團隊與使用者團隊一起參與,共同構建可靠而成功的關鍵雲應用。Google CRE 第一個客戶就是 Niantic,嚴格意義上來說,Pokémon Go 的發布算是首次測試。

發布到澳大利亞不到 15 分鐘,玩家流量超乎預期。Pokémon Go 是 Niantic 嚴格意義上來說的第一款產品,對他們有著特殊的意義。第二天預計將發布版本到美國,在這之前,Niantic 已經提前跟 Google CRE 尋求好了支援。Niantic 和Google雲——包括 CRE,SRE,開發,產品,支援以及執行團隊——一起撐起一大批新的 Pokémon 玩家,疏通玩家過多可能帶來的流量堵塞。

 

建立 Pokémon 遊戲世界

Pokémon Go 是一款行動裝置 App程式,它使用了很多Google雲上的服務,然而雲資料庫直接反映了受歡迎程度,這篇部落格開篇的圖表告訴我們:團隊預計玩家流量會增加一倍,最壞情況下是增加 5 倍;然而事實情況下玩家流量增加到了 50 倍......

發布的時候,也不是每個細節都運行順暢的。問題聚集在遊戲的穩定性上的時候,Niantic 和Google工程師按照順序逐個解決問題,快速建立和部署解決方案。Google CRE 和 Niantic 攜手合作,審查架構的各個部分,利用核心Google工程師和產品經理的專業知識——所有這些都是在數百萬遊戲玩家湧入的背景下進行的。

 

Pokémon 的運行基於容器

Pokémon Go 除了風靡全球,也是目前大環境下使用容器進行開發的情況中最令人興奮的例子之一。遊戲的應用程式邏輯運行在Google GKE 上面,由開源項目 Kubernetes 驅動。Niantic 選擇了 GKE,因為它有能力來協調他們超大規模的叢集容器,解放團隊,使團隊能夠專註於為他們的玩家即時部署更改。用這個方法,Niantic 使用Google雲將 Pokémon Go 轉化為數百萬玩家的服務,並不斷適應和改進。

Niantic 和 Google CRE 團隊完成的一個更加大膽的技術功能就是,將Google GKE 升級到允許添加 1000 多個節點到其容器叢集的新版 GKE,預期在日本發布。就好比更換飛機的發動機一樣,更新技術功能每個步驟都需要仔細小心,在數百萬新玩家登陸並且加入了 Pokémon Go 的遊戲的情況下進行新版本切換,以防止打擾現有的遊戲玩家秩序。

在更新的基礎上,Niantic 和Google工程師一起合作替換網路負載平衡器,在其位置部署新版本的,更加成熟的 HTTP/S 負載平衡器。HTTP/S 負載平衡器是為 HTTPS 流量定製的全球系統,控制更多,串連使用者更快,總輸送量更高——更好地匹配 Pokémon Go 的數量和類型。

在美國發布的版本中吸取到經驗而作出的以下修改:總體容量規劃,容器引擎最新升級的架構,HTTP/S 負載平衡器的升級;這三個修改在發布日本版本的時候收效顯著——日版發布的時候,玩家人數達到了美版的三倍。

Facts

Pokemon Go 遊戲使用了 Google 雲上十幾個服務。

Pokemon Go 是Google GKE 上面 Kubernetes 部署規模最大的項目。鑒於叢集和伴隨著的輸送量,許多 bug 在這個過程中被識別並修複,之後被合并到開源項目之中。

要支援 Pokemon Go 龐大的使用者量,Google 為 Niantic 的容器引擎叢集規划了很多要點核心。

Google 的全球網路協助減少了整體延遲現象。

在這裡,我代表 Google CRE 團隊,覺得作為 Pokemon Go 這樣一個有意義的項目中的一員,實在是難得,能夠為這麼大範圍內的人真覺得榮幸之至。

原文連結:

https://cloudplatform.googleblog.com/2016/09/bringing-Pokemon-GO-to-life-on-Google-Cloud.html

轉載聯絡我們 -3-

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.