网游服务器框架(1)Session

原创 2013年12月04日 21:50:45

因为不想去处理网络IO 所以偷懒直接使用了 libevent作为网络库。。(但是后果就是很多莫名其妙的bug无法明白。以后尝试替换

首先  每一个新连接 都会分配一个 SessionID 作为流水号增长。
相当于一个Client
然后统一放到一个Singlton的SessionManager里做统一处理 。使用map存储 SessionID作为key

每个Session都有一个接受数据缓存区。收到数据便往添加到缓存区尾部。然后尝试去parse一个包。
每个包包含

byte     字节序
int      全包长度 (包含字节序那1字节
short    客户端包序列
short    协议包类型
byte     协议版本
short    16位校验码
int      包数据长度
void*    包数据

其实每个包都带字节序有些多余。可以尝试在第一个包里确定。
解析后,将解析过的数据从缓存区中移除。
得到包后记录得到时间, 将包放到一个环形队列中,等待被执行。



相关文章推荐

网游服务器socket框架精简版

  • 2014年12月05日 10:28
  • 160KB
  • 下载

网游服务器架构和设计

  • 2013年05月04日 18:43
  • 27KB
  • 下载

(Pomelo系列入门教材)Node.js之网游服务器实践

随着Node.js的不断发展与壮大,应用范围也越来越广泛,从传统的企业应用,到互联网使用,再到云计算的发展,它的身影也是随处可见。当然,它的受欢迎程度能在短时间内得到这么快的发展,除却与其本身的事件模...
  • mywcyfl
  • mywcyfl
  • 2014年12月06日 14:49
  • 1048

网游服务器端研究与设计

  • 2012年02月03日 11:03
  • 95KB
  • 下载

网游服务器通信架构方案

  • 2011年09月14日 12:27
  • 76KB
  • 下载

百万人在线网游服务器架构

QQ游戏于前几日终于突破了百万人同时在线的关口,向着更为远大的目标迈进,这让其它众多传统的棋牌休闲游戏平台黯然失色,相比之下,联众似乎已经根本不是QQ的对手,因为QQ除了这100万的游戏在线人数外,它...

Linux下网游服务器的研究与实现

  • 2013年03月17日 19:51
  • 3.17MB
  • 下载

无缝世界网游服务器架构的设计思路

过去一年中,花了很多时间在考虑服务器架构设计方面的问题。看了大量文章、也研究了不少开源项目,眼界倒是开阔了不少,不过回过头来看,对网游架构设计方面的帮助却是不多。老外还是玩儿console game的...

《新飞飞》网游服务器架构设计

原文:http://wenku.baidu.com/view/baa819d4b9f3f90f76c61bac.html?from=rec&pos=3&weight=29&lastweight=28&...

unity3d 网游服务器端如何选择

服务器对比列表 更多老外对SmartFoxServer和Photon比较的吐槽 http://forum.unity3d.com/threads/48538-SmartFox-vs.-Photon ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:网游服务器框架(1)Session
举报原因:
原因补充:

(最多只允许输入30个字)