欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2022-05-17 17:19:31
...
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)的通信。这样不需要玩家选择游戏分区,所有玩家可以互相通信,只要加足够多的连接服务器,就能承载足够多的用户。