手工制作康乃馨-伊戈尔
TencentMMOGserver
概要设计
Version0.1
Kenny2003-11
深圳市腾讯计算机系统有限公司
版权所有不得复制
一、设计目标
1、容量
?最小化容量:在一台机器上支持一个完整的world,约5-10万注册用户,
1000-2000在线用户
?最大化容量:在同一个IDC大区下,支持50万在线用户,划分5-50个world,
每个world支持1–20万在线用户。
以平均每台机器支撑600-1000用户计算,
大概是一个500-800台机器的集群系统
?通过简单的配置,可以较方便地实现从最小化到最大化的伸缩
?考虑到实际情况,可能是在若干个大的地区,安装200台左右的机器,支持10
万-20万在线用户。
较小的地区采用更小的规模。
2、特性
?实时战斗模式,server用2D方式实现,client端可以为2D或者3D沙盘
?用QQ号码登录游戏,不需单独注册
?通过QQserver验证,用Kerberos方式实现CS128bit对称加密
?用户登录后,可以在一个world的不同地图,不同server自由切换,不需重新
连接
?用户的前端连接和后台server处理逻辑分离,后台server的处理逻辑可以透明
更新,不影响在线用户
?支持后台自动更新。
Client端需要更新版本时,用户可以一边玩一边后台更新。
当登录用户已经下载好新版本超过一定比例时才要求强行更新(如大于80%)
?server尽可能支持不同版本的client登录。
Client在升级失败时可以回退。
二、总结构图
Cluster
Account
Billing
DB 1
Account
Billing
DB 2
Account
Billing
DB n
cluster online map
cluser login server
Login
Server
World 1
Login
Server
World 2
Login
Server
World n
1、cluster结构
?一个大区的所有服务器称为一个cluster,包含若干个world
?同一帐号在整个cluster只能登录一个
?clusterloginserver管理整个cluster的onlinemap,保证登录帐号不重复
?每个world有一个loginserver,通过clusterloginserver验证帐号登录,退出时
通过clusterloginserver进行点数计算等。
World
World DB 1World DB 2World DB n
World Online MapWorld Online Map
World Login
Dispatcher
Message
Config
Monitor
Log
zone 1
Zone out
Zone server
Zone Connect
zone 2zone 1
Zone out
Zone server
Zone Connect
zone nzone 1
Zone out
Zone server
Zone Connect
client
clientclient
2、World结构
?一个world可以包含多个zoneserver,每个zoneserver管理一块或者多块地图。
一个world最多包括100个zoneserver,每个处理1000-2000在线用户的话,
一个world可以同时在线10-20万人
?初期地图较小时,如只有一个zoneserver时,可以在一个world的不同zone
server加载同样的地图,使一个world的人数增加(如凯旋的subset)。
例如
zone0,zone10…zone50加载相同的地图,用户可以在这些zone之间切换。
地图
增加时,分别增加为zone1,zone11….zone51等等,一个world超过10个zone
时,可以把重复的zone合并
?所有的Zoneserver有同样的文件,启动时通过Configserver读取不同配置,管
理不同的地图
?client直接连接到Zoneserver的zoneconnect进程,zoneconnect进程管理所有
的client端连接,并通过内存管道传递到zoneserver进程。
非本zone的数据由
zoneout进程直接传递到dispatcher
?zoneserver进程处理所有的游戏逻辑,需要传递到其他zone的消息通过内存管
道传送到zoneout,再由zoneout通过worldmessageserver传递到相应的zone
server
?dispatcherserver接受各个zone的非本zone数据,并传递到相应的zone
?messageserver接受各个zone的非本zone消息,通过worldonlinemap查找并
传递到相应zone
?loginserver接受各个zone的loginlogout请求,通过worldonlinemap检查其唯
一性,然后通过clusterloginserver实现loginlogout,更新worldonlinemap
陈奕迅最经典的歌词-股票
关于描写秋天的诗句-深深宝
反弹琵琶什么意思-国脉科技
你给的温柔-中新药业
长安乱txt下载-长盛基金管理有限公司
越狱的男主角-成品油价格
大考当前-
陌陌含情-路冰纯
发表评论
要发表评论,您必须先登录。
server用2D方式实现
总结构图ClusterAccountBillingDB 1AccountBillingDB 2AccountBillingDB ncluster online mapcluser login serverLoginServerWorld 1LoginServerWorld 2LoginServerWorld n1
可能是在若干个大的地区
client端可以为2D或者3D沙盘?用QQ号码登录游戏
Client在升级失败时可以回退
设计目标1
不同server自由切换
每个处理1000-2000在线用户的话
手工制作康乃馨-伊戈尔2021年6月23日发(作者:2579)TencentMMOGserver概要设计Version0.1Kenny2003-11深圳市腾讯计算机系统有限公司版权所有不得复制一
WorldWorld DB 1World DB 2World DB nWorld Online MapWorld Online MapWorld LoginDispatcherMessageConfigMonitorLogzone 1Zone outZone serverZone Connectzone 2zone 1Zone outZone serverZone Connectzone nzone 1Zone outZone serverZone Connectclientclientclient2