网易发布基于node.js的开源游戏服务器框架pomelo…… - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
halfblood
V2EX    程序员

网易发布基于node.js的开源游戏服务器框架pomelo……

  •  
  •   halfblood 2012-11-30 22:40:24 +08:00 5073 次点击
    这是一个创建于 4766 天前的主题,其中的信息可能已经有所发展或是发生改变。
    网易开放了开源游戏框架pomelo,借贵宝地招招人气,希望得到大家宝贵的意见……


    pomelo是基于node.js的高性能,分布式游戏服务器框架。它包括基础的开发框架和相关的扩展组件(库和工具包),可以帮助你省去游戏开发枯燥中的重复劳动和底层逻辑的开发。
    pomelo不但适用于游戏服务器开发, 也可用于开发高实时web应用,它的分布式架构可以使pomelo比普通的实时web框架扩展性更好。

    pomelo包括三部分:
    1. 框架, pomelo的核心, 与以往单进程的游戏框架不同, 它是高性能、分布式的游戏服务器框架,并且使用很简单
    2.库, 包括了开发游戏的常用工具库, 如人工智能(ai), 寻路, aoi等
    3.工具包, 包括管理控制台, 命令行工具, 压力测试工具等

    pomelo特性
    1.快速、易上手的游戏开发模型和api
    2.高可伸缩的多进程架构, 支持MMO的场景分区和其它各类分区策略
    3.方便的服务器扩展机制,可快速扩展服务器类型和数量
    4.方便的请求、响应、广播、服务器通讯机制, 无需任何配置
    5.注重性能,在性能、可伸缩性上做了大量的测试、优化
    6.提供了较多扩展组件,包括游戏开发常用的库和工具包
    7.提供了完整的MMO demo代码(客户端html5),可以作为很好的开发参考
    8.基于socket.io开发,支持socket.io支持的多种语言客户端

    为什么使用pomelo?
    高并发、高实时的游戏服务器的开发是很复杂的工作。跟web应用一样, 一个好的开源容器或开发框架可以大大减少游戏开发的复杂性,让开发变得更加容易。
    遗憾的是目前在游戏服务器开发领域一直没有太好的开源解决方案。
    pomelo将填补这个空白, 打造一款完全开源的高性能(并发)游戏服务器框架。 pomelo的优势有以下几点:
    1. 架构的可伸缩性好。 采用多进程单线程的运行架构,扩展服务器非常方便, node.js的网络io优势提供了高可伸缩性。
    2.使用非常容易, 开发模型与web应用的开发类似,基于convention over configuration的理念, 几乎零配置, api的设计也很精简, 很容易上手。
    3.框架的松耦合和可扩展性好, 遵循node.js微模块的原则, framework本身只有很少的代码,所有component、库、工具都可以用npm module的形式扩展进来。任何第三方都可以根据自己的需要开发自定义module。
    4.提供完整的开源MMO游戏demo参考(基于HTML 5)。 一个超过1万行代码的游戏demo,使开发者可以随时借鉴demo的设计与开发思路。


    github地址: https://github.com/NetEase/pomelo/
    在线demo地址:http://pomelo.netease.com/lordofpomelo/
    9 条回复    1970-01-01 08:00:00 +08:00
    viperasi
        1
    viperasi  
       2012-12-01 10:09:37 +08:00   1
    楼主是开发者?刚down下来还没开始研究。不过怎么也要支持一下。
    halfblood
        2
    halfblood  
    OP
       2012-12-01 12:16:47 +08:00
    呵呵,参与一部分开发工作,谢谢关注哦……
    halfblood
        3
    halfblood  
    OP
       2012-12-01 13:41:42 +08:00
    感觉v2ex力做nodejs开发的程序员很少啊……
    hidden
        4
    hidden  
       2012-12-01 13:44:44 +08:00
    @halfblood 不少吧? 关于pomelo上次似乎有人发过帖了... 那个demo我昨天还去玩了。 砍怪老不动,那怪会粘人么?
    halfblood
        5
    halfblood  
    OP
       2012-12-01 19:16:22 +08:00
    @hidden 怪有后端AI在驱动,会跟踪人一段距离,如果没死的话会自动回去。游戏demo毕竟不是产品,做的比较粗糙,不过里面的bug我还是会认真对待的,尽力修复。
    andy12530
        6
    andy12530  
       2012-12-01 19:16:50 +08:00
    网易在前端那边也开源了两个CSS和JS框架。
    halfblood
        7
    halfblood  
    OP
       2012-12-01 19:19:47 +08:00
    @andy12530 你指的是NEJ么?是我们这边刚开源的一个前端框架,网上讨论挺火的。顺便透露下,估计明年这边还会开源一个基于html5的前端游戏引擎,游戏开发团队有福气啦!
    andy12530
        8
    andy12530  
       2012-12-01 19:23:14 +08:00
    @halfblood 还有NEC,不过为啥不托管在github或者coffeegit上面呢,提个bug都得写邮件?
    halfblood
        9
    halfblood  
    OP
       2012-12-01 19:27:29 +08:00
    @andy12530 好像目前没有放到github上,你这个意见我会向他们转达的,谢谢哈……
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1201 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 17:40 PVG 01:40 LAX 09:40 JFK 12:40
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86