欢迎使用pomelo
pomelo是一个游戏服务器框架,与以往单进程的游戏框架不同, 它是高性能、高可伸缩、分布式多进程的游戏服务器框架,并且使用很简单。它包括基础开发框架和一系列相关工具和库,可以帮助开发者省去游戏开发中枯燥的重复劳动和底层逻辑工作,免除开发者的重造轮子,让开发者可以更多地去关注游戏的具体逻辑,大大提高开发效率。pomelo强大的可伸缩性和灵活性使得pomelo也可以作为通用的分布式实时应用开发框架,用于一些高实时应用的开发,而且pomelo在很多方面的表现甚至超越了现有的开源实时应用框架。pomelo支持所有主流平台的客户端,并提供了客户端的开发库,使得客户端的开发变得很友好。
pomelo组成
pomelo 是由一系列相互之间弱耦合的部分组合而成的,包括:
框架
框架是pomelo最核心的部分;
库
pomelo提供了很多库,有些是跟游戏逻辑完全相关的,如AI,AOI,寻路等;也有与游戏逻辑无关但比较通用的,如定时任务执行, 数据同步等等;
工具
pomelo提供了服务器管理控制工具、命令行工具、压力测试工具等一系列工具;
客户端库
pomelo提供了各类平台的客户端开发库,包括js, C, C#,Android, iOS, Unity3D等等,几乎支持涵盖了目前所有的主流平台,由于pomelo的协议是开放的,架构耦合松散,对于没有支持的客户端平台,用户也可以很容易地开发出自己需要的库,定制自己的通信协议;
demo
一个框架需要强大的demo来展示功能并为开发者提供示例,pomelo提供了全平台的聊天demo和基于HTML5的捡宝demo,系统还提供了一个强大的基于HTML5开发的MMO游戏demoLordofpomelo(源码)。
为什么使用pomelo?
高并发、高实时的游戏服务器的开发是很复杂的工作。跟web应用一样, 一个好的开源容器或开发框架可以大大减少游戏服务器开发的复杂性,让开发变得更加容易。遗憾的是目前在游戏服务器开发领域一直没有太好的开源解决方案。 pomelo将填补这个空白, 打造一款完全开源的高性能高并发游戏服务器框架。 pomelo的优势有以下几点:
架构的可伸缩性好
采用多进程单线程的运行架构,扩展服务器非常方便, node.js的网络io优势提供了高可伸缩性,写好的应用只需要简单地修改一下配置就能轻松地伸缩扩充;
易用
pomelo基于轻量级的nodejs,其开发模型与web应用的开发类似,基于convention over configuration的理念, 几乎零配置, api的设计也很精简,很容易上手,开发快速;
框架的松耦合和可扩展性好
遵循node.js微模块的原则, 框架本身只有很少的代码,所有component、库、工具都可以用npm module的形式扩展进来,任何第三方都可以根据自己的需要开发自定义module,并把它整合到pomelo的框架中。
完整的demo和文档
pomelo提供了完整的中英文文档,pomelo还提供一个完整的开源MMO游戏demo--Lordofpomelo(源码),一个超过1万行代码的游戏demo,使开发者可以随时借鉴demo的设计与开发思路。
pomelo的定位
pomelo是一个轻量级的服务器框架,它最适合的应用领域是网页游戏、社交游戏、移动游戏的服务端,开发者会发现pomelo可以用如此少的代码达到强大的扩展性和伸缩性。当然还不仅仅是游戏,用pomelo开发高实时web应用也如此合适, 而且伸缩性比其它框架好。
不推荐将pomelo用于大型的MMORPG游戏开发,尤其是大型3D游戏, 还是需要象Bigworld这样的商用引擎来支撑。
好了,是不是有迫不及待了,那就赶快安装pomelo来试试吧。