分享一个网络游戏服务器架构—HouHai

HouHai是一个开源的网络游戏的服务器端架构,它使用了开源的RPC中间件Tatala。( 介绍

HouHai下载地址
https://github.com/zijan/HouHai

现在,源代码只是一个草案,不能编译,为网游后台开发者提供一个参考。它是社交游戏《僵尸星球》客户端与服务器端网络通信的一部分代码。

《僵尸星球》是发布在腾讯QQ空间上的一款社交游戏。
http://rc.qzone.qq.com/1101064313
玩家可以在游戏里事实聊天和PK。客户端是基于Unity3D用C#编写。服务器端是Java。

HouHai采用最先进的非分区设计,理论上可承载的用户数是无限的,只要加足够多的机器。

等以后有时间会逐步完善这个架构,建立一个简单完整的例子。

设计思想:
在没有修改服务器系统设置的情况下,一台机器所能承载的最大连接数是有限制的,比如8000个。通常一个服务器就代表了一个“区”,即保持了所以的用户连接又包含了游戏逻辑,一般情况下各个区之间的玩家是不通信的。非分区设计就是,把保持用户连接的功能从包含游戏逻辑的服务器中分离,单独做成多个连接服务器的并联(看HouHai里的Gateway就是连接服务器),它只保持玩家的网络连接,不包含游戏逻辑,负责传递客户端与游戏逻辑服务器(HouHai里的Longin和Lobby)的通信。这样不需要玩家选择游戏分区,所有玩家可以互相通信,只要加足够多的连接服务器,就能承载足够多的用户。

猜你喜欢

转载自zijan.iteye.com/blog/2042804