类Dota2服务器架构构思
Game Login Server游戏登陆服务器:
负责账号密码验证,游戏负载,短链接,验证成功后,客户端连接相应GameServer,断开LoginServer,处理其他客户端登陆请求
Game Gate Server 游戏Gate服务器:
连续客户端和服务器组的门户,服务器组的窗口,分发,接受客户端服务器数据包,
Game Center Server游戏中控服务器:
负载天梯排行,队伍匹配,物品,好友,商城,创建房间,销毁房间, 类似Dota2中的游戏协调服务器(GC),
Game Node Server游戏节点服务器:
负载游戏部分,pvp对战,所有的对战房间都在NodeServer上创建,支持玩家pvp体验
Game DBA Server DB服务器:
负载数据缓存以及数据库读写功能
服务器集群
登陆服务器+Gate服务器*N+中控服务器+游戏节点服务器*N
集群服务器的压力瓶颈在于中控服务器,如果压力太大可以扩展出一个服务器处理好友,物品,商城等,中控服务器专门负载处理玩家匹配和房间的创建和销毁
引用:http://cn.dota2.com/2013/06/正在进入启动模式/
首先,我们有一个叫做游戏协调器(简称GC)的服务器,这一服务器是许多不同服务器共同处来理Dota 2所需后端工作的(除了创建游戏以外)。这个服务器负责您登陆,匹配,物品记录以及其他许多功能。这意味着随着我们的用户数量增加,这一服务器的规模也相应的需要增加。我们认为从增加GC规模这一块来说我们现在做的还不错(我们至少能承受目前数量两倍的用户),不过这仅仅是用户增长时我们需要关注的一方面。
另外一个后端服务中主要的组成部分就是Dota 2的游戏服务器。我们把它们按照单元计数,称之为集群,对我们来说意思是一个能够使得某一地区能够进行Dota 2游戏且自身功能完整的网络设施。因此这并不仅仅是一堆机器,它们有着所有的交换连接装置,网络管理设备,录像储存等。目前我们在全世界各地有着25个集群。每个集群有大概160台设备来支持游戏服务器,每个设备能支持的大概是112局同时进行的Dota 2游戏。这意味着每个集群在同一时间大概能供18万玩家进行游戏。同时除了游戏服务器的CPU和内存等方面,我们还有大概400G的带宽来确保Dota 2服务器的游戏顺利进行。游戏服务器和带宽的优点是扩展起来更加直接,因为唯一需要做的就是花钱买而不是解决一系列复杂的软件问题。尽管这个将会花费一定时间,但它的可预见性更强。