九遊:通過OSS UDF升階交付能力及降低成本

來源:互聯網
上載者:User

摘要: 要升階商務交付能力,亦要許諾成本,看九游如何利用OSS的能力,升階交付,降低成本。

九游,是阿裡UC優視旗下的一項重要戰略商務,九游依託於UC瀏覽器這一擁有超過4億用戶的全球最大的行動瀏覽器平臺,利用用戶資源優勢和遊戲平臺相關技術優勢,打造全國乃至全球領先的移動遊戲開放平臺。

目前九遊平臺月活躍用戶超過6000萬,已經上線數萬款遊戲,有上千個夥伴與九遊聯合運營。根據中國移動的閘道資料顯示,僅僅“九遊”一個閘道,就已經在國內的所有企業手機遊戲發行平臺中排名第二,僅次於騰訊遊戲,產業占比12%,大大超過其他手機遊戲平臺。

下面主要說一下九游的發行平臺如何通過上雲來升階發行服務能力及性價比。

遊戲管道封裝商務架構圖

c50d29114d17b10113897162002f5ede7a8e0219

面臨的問題

九遊在上雲程序中面臨的問題主要是網路頻寬和隱藏成本。

1. 網路頻寬

  • 單台ECS 500M內網頻寬
  • 多台ECS擴容頻寬,成本昂貴
  • OSS單用戶流控

2. 隱藏成本

  • 單個遊戲包分不同管道多複本存放
  • 隱藏成本線性上升
  • OSS自身隱藏能力受到挑戰

OSS-UDF方案

我們現在採用的是OSS-UDF(UserDefined Function)是OSS團隊針對類似九遊、對隱藏內容有輕量計算需求所提供的產品化解決方案。

ddd1bdc262a6bedeb24edcc89364eac5587d6e0d

UDF全稱是用戶自訂函數(UserDefined Function),用戶通過該函數(程式)可以對隱藏在OSS上的資料進行自訂處理。通過UDF,OSS可以為用戶提供基於隱藏服務上的輕計算能力,用戶資料不再是簡單的隱藏在OSS上,而是可以根據自己的需求,對資料進行特殊的處理,比如解壓、轉碼、影像處理等,從而大大方便了用戶。

利用UDF改造管道封裝系統

下面是我們利用UDF改造封裝系統的步驟。

  1. 以熟悉的程式設計語言開發好UDF程式,假設叫做BuildChannel,該程式需要監聽9000埠,能夠接收HTTP POST要求,內容是對一個原始的遊戲包做管道包封裝動作(新型的管道包封裝基本是在原始管道包檔案後attatch一段管道資訊)
  2. 通過一個YAML格式的檔案,用戶設定OSS安裝必要的依賴,最終BuildChannel要能直接執行於Ubuntu 14.04。
  3. 註冊BuildChannel,後續主控台會開放標準註冊網頁和API,本期階段線下設定;
  4. 用戶端根據UDF合約叫用;
  5. OSS接到叫用,將UDF要求解析出來POST給UDF程式,處理完成後,OSS叫用將直接返回打好管道知識安裝包。

改造後的效果

UDF只適合對單體資來源物件做簡單處理的場景,因為UDF的叫用時間包含在OSS叫用的返回時間內,如果需要較長時間(涉及複雜計算場景、批量資源)的叫用不合適使用UDF。

九遊使用該功能後,多台封裝伺服器可以逐漸降低到2台甚至更少(一些老的管道封裝無法用UDF實現);同時對於商務增長的預期可以通過OSS擴充UDF資源實現,相應性價比高很多。

最重要的,九遊絕大部分數量的遊戲包只用隱藏1份原始包、以及少量不能用UDF構建的管道包,儲存空間比起全部靜態封裝的方式,縮減到1/N,極好替用戶節省了成本。

九遊接入UDF花了2周不到時間,完成編碼、偵錯、上線,接入相當簡單快捷。

相關產品:

  1. 物件隱藏OSS
  2. 雲端服務器ECS
  3. 雲資料庫HybridDB版
相關文章

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.