網易游戲開發框架,Pomelo 0.3 正式發布

jopen 11年前發布 | 18K 次閱讀 pomelo

Pomelo 0.3版正式發布

Pomelo 0.3版為移動端性能優化做了很多工作, 新協議的數據包壓縮后的傳輸量僅為0.2版的20%, 并保留了0.2版基于socket.io的傳輸協議。socket.io對開發瀏覽器端器端的實時應用非常適合,而socket(websocket)、 protobuf、二進制等協議則對移動端、桌面客戶端的開發更具優勢。pomelo對它們的同時支持使同時支持瀏覽器、移動、桌面客戶端的高實時應用或 游戲變得非常容易。

服務器的動態擴展是另一個重要的特性, 這不僅使系統適應了彈性的工作環境,也為游戲的一些動態功能提供了更多方便, 如MMORPG游戲的動態副本等。

0.3版還提供了其它很多特性,如新的廣播接口, 新的客戶端支持等。

相關文檔:
pomelo 0.3版新特性
pomelo 0.2到0.3版升級指南


pomelo 是由網易開發的基于node.js開發的高性能、分布式游戲服務器框架, 也可作為高實時web應用框架。

網易游戲開發框架,Pomelo 0.3 正式發布

Pomelo的應用范圍

pomelo最適合的應用領域是網頁游戲、社交游戲、移動游戲的服務端,開發者會發現pomelo可以用如此少的代碼達到強 大的擴展性和伸縮性。當然還不僅僅是游戲,很多人斷言未來的web時代是實時web應用的時代, 我們發現用pomelo開發高實時web應用也如此合適, 而且伸縮性比其它框架好。目前不推薦將pomelo用于大型的MMO rpg游戲開發,尤其是3d游戲, 還是需要象bigworld這樣的商用引擎來支撐。

Pomelo的理念

pomelo的第一個理念是讓游戲(高實時web應用)服務器的開發變得非常簡單, 而不是解決某類算法或系統上的難題。這個設計理念跟rails是很類似的;第二個理念是重視性能和可伸縮性,用戶用pomelo開發出來的游戲天生具有很 強的伸縮性,擴展也很容易。我們在性能優化上也花了很多功夫,并且會持續進行;第三個理念是讓第三方很容易擴展,框架用了很多插件式的設計, 組件component、路由規則、甚至管理控制臺都可以完全由第三方擴展。

網易游戲開發框架,Pomelo 0.3 正式發布 網易游戲開發框架,Pomelo 0.3 正式發布

Pomelo的框架組成

pomelo包括三部分:

  • 框架, pomelo的核心, 與以往單進程的游戲框架不同, 它是高性能、分布式的游戲服務器框架,并且使用很簡單
  • 庫, 包括了開發游戲的常用工具庫, 如人工智能(ai), 尋路, aoi等
  • 工具包, 包括管理控制臺, 命令行工具, 壓力測試工具等

pomelo特性

  • 快速、易上手的游戲開發模型和api
  • 高可伸縮的多進程架構, 支持MMO的場景分區和其它各類分區策略
  • 方便的服務器擴展機制,可快速擴展服務器類型和數量
  • 方便的請求、響應、廣播、服務器通訊機制, 無需任何配置
  • 注重性能,在性能、可伸縮性上做了大量的測試、優化
  • 提供了較多擴展組件,包括游戲開發常用的庫和工具包
  • 提供了完整的MMO demo代碼(客戶端html5),可以作為很好的開發參考
  • 基于socket.io開發,支持socket.io支持的多種語言客戶端

為什么使用pomelo?

高并發、高實時的游戲服務器的開發是很復雜的工作。跟web應用一樣, 一個好的開源容器或開發框架可以大大減少游戲開發的復雜性,讓開發變得更加容易。
遺憾的是目前在游戲服務器開發領域一直沒有太好的開源解決方案。 pomelo將填補這個空白, 打造一款完全開源的高性能(并發)游戲服務器框架。 pomelo的優勢有以下幾點:

  • 架構的可伸縮性好。 采用多進程單線程的運行架構,擴展服務器非常方便, node.js的網絡io優勢提供了高可伸縮性。
  • 使用非常容易, 開發模型與web應用的開發類似,基于convention over configuration的理念, 幾乎零配置, api的設計也很精簡, 很容易上手。
  • 框架的松耦合和可擴展性好, 遵循node.js微模塊的原則, framework本身只有很少的代碼,所有component、庫、工具都可以用npm module的形式擴展進來。任何第三方都可以根據自己的需要開發自定義module。
  • 提供完整的開源MMO游戲demo參考(基于HTML 5)。 一個超過1萬行代碼的游戲demo,使開發者可以隨時借鑒demo的設計與開發思路。

在線演示:http://pomelo.netease.com/demo.html

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!