Redclock's Blog

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

我之前的项目都是基于http做网络通信,但是做多玩家同时对战的游戏,http短连接不支持服务器的push是个问题,这样客户端就没办法收到服务器的消息。

最简单的方法是定时发起request询问服务器,显然效率和流量是个问题。还有Comet方法,即服务器保持连接直到有数据可用才返回。

网上搜了一下comet,看到评论说这个方法也效率不是很高。

HTML5支持websocket之后好像socket连接是一个又高效又简单的方法。客户端用socket.io比较简单,服务器要找一个引擎,简单易用为前提,最好是比较熟悉的node.js,像erlang之类,虽然网上介绍都说十分强大好用,但要新学一个函数式语言,效率太低了。

node.js裸写socket好像也很麻烦啊,自己写质量肯定也不行,所以网易出的pomelo成了我的选择。看了pomelo的教程,这东西的设计好像很牛啊,用起来也好像非常简单啊,也有一些商业程序在用,应该还是比较靠谱的吧。

附:

深入浅出node.js游戏服务器开发1——基础架构与框架介绍

主要是推pomelo的

posted on 2014-08-03 16:06  Redclock  阅读(324)  评论(0编辑  收藏  举报