类Dota2服务器架构

类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服务器的游戏顺利进行。游戏服务器和带宽的优点是扩展起来更加直接,因为唯一需要做的就是花钱买而不是解决一系列复杂的软件问题。尽管这个将会花费一定时间,但它的可预见性更强。

时间: 2024-10-16 19:18:15

类Dota2服务器架构的相关文章

棋牌游戏服务器架构设计

转载自:简书一位同行的文章 一,棋牌类服务器的特点 1,棋牌类不分区不分服 一般来说,棋牌游戏都是不分区不分服的.所以棋牌类服务器要满足随着用户量的增加而扩展的需要. 2,房间模式 即在同一局游戏中就是在同一个房间中,同一个房间中的人可以接收到其他人的消息. 3,每个房间的操作必须是顺序性 这个特性类似与一般游戏的回合制,每个玩家的操作都是有顺序性的. 二,需要解决的技术点 1,数据共享 因为棋牌类游戏不分区不分服,我们在设计服务器的时候,是按世界服的思想去设计,即服务器是一个n多台物理机的集群

高性能服务器架构思路

在服务器端程序开发领域,性能问题一直是备受关注的重点.业界有大量的框架.组件.类库都是以性能为卖点而广为人知.然而,服务器端程序在性能问题上应该有何种基本思路,这个却很少被这些项目的文档提及.本文正式希望介绍服务器端解决性能问题的基本策略和经典实践,并分为几个部分来说明: 1. 缓存策略的概念和实例 2.缓存策略的难点:不同特点的缓存数据的清理机制 3.分布策略的概念和实例 4.分布策略的难点:共享数据安全性与代码复杂度的平衡 缓存 缓存策略的概念 我们提到服务器端性能问题的时候,往往会混淆不清

大型网站图片服务器架构的演进(转)

在主流的Web站点中,图片往往是不可或缺的页面元素,尤其在大型网站中,几乎都将面临“海量图片资源”的存储.访问等相关技术问题.在针对图片服务器的架构扩展中,也会历经很多曲折甚至是血泪教训(尤其是早期规划不足,造成后期架构上很难兼容和扩展). 本文将以一个真实垂直门户网站的发展历程,向大家娓娓道来. 构建在Windows平台之上的网站,往往会被业内众多技术认为很“保守”,甚至会有点.很大部分原因,是由于微软技术体系的封闭和部分技术人员的短视造成的(当然,主要还是人的问题).由于长期缺乏开源支持,所

大型网站图片服务器架构的演进

在主流的Web站点中,图片往往是不可或缺的页面元素,尤其在大型网站中,几乎都将面临“海量图片资源”的存储.访问等相关技术问题.在针对图片服务器的架构扩展中,也会历经很多曲折甚至是血泪教训(尤其是早期规划不足,造成后期架构上很难兼容和扩展). 本文将以一个真实垂直门户网站的发展历程,向大家娓娓道来. 构建在Windows平台之上的网站,往往会被业内众多技术认为很“保守”,甚至会有点.很大部分原因,是由于微软技术体系的封闭和部分技术人员的短视造成的(当然,主要还是人的问题).由于长期缺乏开源支持,所

网络棋牌游戏服务器架构

一.物理架构说明 游戏系统组件包括: 服务器系统(中心服务器的控制系统,服务器登陆控制的系统,游戏登陆服务器,游戏房间控制的系统,游戏组件系统),游戏客户端(游戏大厅,游戏组件). 数据库系统:用于保存用户的信息数据.游戏积分数据.游戏系统运行状态的数据以及系统日志数据等数据. 中心服务器的控制系统:用于向客户端提供全局配置及初始化数据使用. 服务器登陆的控制系统:用于房间服务控制系统的登陆效验使用. 游戏房间的控制系统:用于控制游戏房间的启动,停止,添加,删除,管理等等. 游戏组件系统:用于具

棋牌高防服务器架构

棋牌高防服务器架构q8803582 首先要说明的是, 这个棋牌游戏的服务器架构参考了网狐棋牌的架构.网狐棋牌最令人印象深刻的是其稳定性和高网络负载.它的一份压力测试报告上指出:一台双核r的INTEL Xeon 2.8CPU加上2G内存和使用共享100M光纤的机子能够支持5000人同时在线游戏. 在研究其服务器框架后发现,它的网络部分确实是比较优化的.它主要采用了Windows提供的IO完成端口来实现其网络组件.本服务器虽然参考了其设计,但是还是有很大的不同,因为这个服务器框架主要是用在linux

【转】高性能服务器架构(High-Performance Server Architecture)

High-Performance Server Architecture 高性能服务器架构 来源:http://pl.atyp.us/content/tech/servers.html译文来源:http://www.lupaworld.com/home/space-341888-do-blog-id-136718.html (map注:本人看了一遍,“于我心有戚戚焉”,翻译得也很好,于是整理了一下,重新发布,备忘) 引言 本文将与你分享我多年来在服务器开发方面的一些经验.对于这里所说的服务器,更

同一世界服务器架构--Erlang游戏服务器

Erlang最大的优点是方便,很多基础功能都已经集成到Erlang语言中.之前用C++写服务器的时候,管理TCP连接很繁琐,需要写一大堆代码来实现.底层的框架需要写很多代码实现,这样既浪费时间,又会有很多BUG.但是用Erlang就方便多了,底层的一切你都不需要考虑,你只需要考虑,服务器的架构以及业务逻辑.从此让你彻底从底层的泥潭中解脱.我从去年年底开始了解学习Erlang,到现在我已经彻底爱上了Erlang.好了,废话不多说,开始详细介绍下我设计的这个服务器架构吧. 首先看下整个架构的布局,如

简论游戏服务器架构设计

一.QIPAI类服务器的特点 1,QIPAI类不分区不分服 一般来说,QIPAI游戏都是不分区不分服的.所以QIPAI类服务器要满足随着用户量的增加而扩展的需要. 2,房间模式 即在同一局游戏中就是在同一个房间中,同一个房间中的人可以接收到其他人的消息. 3,每个房间的操作必须是顺序性 这个特性类似与一般游戏的回合制,每个玩家的操作都是有顺序性的. 二,需要解决的技术点 1,数据共享 因为QIPAI类游戏不分区不分服,我们在设计服务器的时候,是按世界服的思想去设计,即服务器是一个n多台物理机的集