品牌名稱
中手游科技
企業規模
1-10人

CODING 助力中手游甩開低效桎梏, 盡情奔向游戲王國

561次閱讀
undefined

 

中手游是領先的全球化 IP 游戲運營商。根據 Analysys(易觀智庫)數據顯示,截至 2019 年 12 月 31 日,除騰訊游戲外,中手游是擁有 IP 儲備數量最多的中國游戲發行商,發行的移動 IP 游戲數量僅次于騰訊游戲。公司于2019 年 10 月 31 日在香港聯交所主板上市。

 

其名下有多款知名游戲,其中《擇天記》及《傳奇世界之雷霆霸業》上線后最高月流水賬額分別超過人民幣 1.7 億元及人民幣 2 億元。

 

手游進入 2.0 時代,人肉運維亟待解決

近年來,手游市場的玩家用戶增量在逐漸減少,意味著過去渠道為王的盈利模式在弱化,游戲廠商的產品能力愈發重要,如何高效地研發出優質手游成為許多游戲廠商的發力點。而產品能力培養的背后,除了需要天馬行空的創造力,還需要順暢的研發流程以及高效的組織形式來落地想象力。

 

截止 2020 年年中,中手游線上活躍游戲已高達 80 款。我們從中手游研發團隊了解到,游戲項目的快速研發依賴于成熟的腳手架。基于多年的游戲自研經驗,中手游已在內部系統中積累了大量腳手架。

 

每個運維人員自行在本地編寫維護腳手架的腳本。每個人的技術棧不同,導致腳本也是參差不齊,有些腳本已經走向一鍵執行的工業時代,有些腳本還停留在一行一行命令輸入的手工時代。上述問題導致一旦出現人員更替,這些腳本就可能會丟失或令人難以接手,拖延游戲研發效率。

 

undefined

 

在生產環境中,這些腳本的運行也存在隱患。運維人員需要手動登錄到內部系統的生產環境中,拷貝并調用腳本。人工頻繁地在生產環境中登錄登出,不但會有手工執行命令帶來的操作風險,還有密碼賬號泄露的風險;并且由于腳本的執行與指定運維人員強相關,對生產環境的維護也帶來了制約。

 

統一的代碼管理,自動化的流水線

針對人肉管理帶來的種種不便,CODING 提供了代碼管理、持續集成以及 Wiki 知識庫的能力,幫助中手游的運維團隊完成腳本的統一化管理、自動化流水線的構建以及運維操作事項的規范化管理。

 

undefined

 

  • 云端代碼管理替代本地零散存儲

中手游運維團隊將腳本放置在 CODING 代碼倉庫中進行統一管理,既能方便存儲與查看,又便于統一技術棧,統一規范和版本控制。基于云端的代碼托管,使得運維人員可以隨時隨地查看或修改腳本代碼,團隊可以通過執行 CODING 代碼掃描來進行代碼規范與質量管理,團隊管理人員在 CODING 工作臺中隨時隨地巡檢所有項目的腳本情況。

 

undefined

 

  • 自動化流水線提高發布效率

解決好腳本管理的問題后,接下去就是腳本運行的問題。基于持續集成,通過選擇使用自定義的構建節點的方式,在構建計劃中指定不同環境的配置文件,中手游將流水線接入了各種環境。流水線自動化調用代碼倉庫中的腳本,避免了人工操作的風險;同時將安全相關的參數以保密形式的環境變量或安全憑據配置在 CI 中,也減少了口口相傳的風險。

 

undefined

 

有了自動化流水線后,中手游運維團隊可以按需制定發布計劃,不再依賴指定人員的發布操作。對于測試環境日常頻繁發布的小更新,開發人員提交代碼后就會自動觸發構建任務;生產環境則加入人工卡點,由運維手動觸發構建任務。在流水線運行完畢后,團隊人員還能夠及時收到流水線運行結果通知。

 

undefined

 

  • Wiki 知識庫規范運維操作

在中手游運維團隊過去的日常工作中,有大量的運維相關信息以本地文件形式進行共享,比如資源信息、發布操作注意事項,每位運維無法全面地掌握運維知識與規范,也很難和開發團隊及時地共享變更。基于 Wiki 知識庫,運維團隊對工作進行了一次全面梳理,將所有運維知識與規范整理后放置在云端知識庫中:

  • 測試/類生產/生產環境資源管理
  • 發布變更規范
  • 故障管理規范
  • 業務模塊質量打分機制等
  •  

基于統一知識庫,新成員可以快速掌握運維操作要點,開發和運維也能及時共享運維規范信息,團隊之間的信息不對稱呈量級下降。MD 文檔形式讓 Wiki 編輯也更加方便易用;對于安全相關的 Wiki 內容 CODING 支持開啟訪問者水印,減少內容泄漏的風險。

 

undefined

 

  • 精細化的安全機制保駕護航

由于運維的工作特性,對安全一直有著很高的要求。中手游的運維團隊使用了 CODING 的 IP 白名單機制以及日志功能來提高人員登錄 CODING 的安全性。在登錄日志中可以看到每次登錄的 IP 及地址庫中匹配的地理位置,在操作日志中可以看到成員的操作類型、操作內容等信息。

 

同時 CODING 還提供了精細的權限劃分和易用的權限設置,幾乎每個功能模塊都支持權限開關、讀寫分離。例如中手游團隊把開發在持續集成模塊的權限僅設為訪問,而無管理和刪除權限,這樣開發人員只能觸發運行,運維人員才能管理流水線。

 

undefined

 

基礎設施代碼化,助力團隊聚焦核心業務

通過 CODING 的代碼倉庫、持續集成以及 Wiki 知識庫,中手游的運維團隊將游戲腳手架發布所需的基礎配置信息,以代碼的形式進行統一管理起來,同時將重復繁瑣的發布操作自動化,這使得開發與運維的合作更加緊密,降低了團隊之間的損耗,讓游戲的交付更加有序、規范、高效。

 

中手游目前處在快速發展時期,在未來,中手游將基于 CODING 打造更加快速的游戲交付流程,給玩家們帶來更快更好更新奇的游戲體驗。