云端游戏架构

说起架构,分为两块,一个是软件层次的代码架构,另外一个是硬件层次的系统架构。软件层次的,模块划分、代码重构及业务层的架构为主。系统层次的,以网络、部署、服务器集群为主。软件层次的架构,在于前期代码研发。硬件层次的系统架构,在于后期的服务器部署上线。今天的内容主要偏向于游戏领域的系统架构。

谈起系统架构,无外乎就那些技术,什么负载均衡啊,什么数据库垂直、水平分区啊、前端/后端缓存、nosql什么什么的。几乎任何行业里面的架构,都离不开这些技术。今天要说的是游戏架构,我不想再费劲的介绍那些传统的架构技术,也没什么新鲜感。要说某个领域的架构,我觉得这个领域相比其他领域的架构有什么鲜明特点,这才是最有价值的部分。

游戏架构相比传统b/s、c/s应用架构,鲜明特点在于:
游戏架构特有的“分区”概念。

为了解决玩家的延时,传统IDC机房的游戏架构,一般分为电信和联通两个大的分区。然后在两个大分区中,又分类似“北京分区”“上海分区”“江苏分区”等等。这种逻辑层次的按照地域的分区,其实在物理层次,是把服务器对应部署在不同地域的机房中。这样部署,也主要是为了解决游戏玩家的延迟性。打个比方,北京电信的玩家登陆上海电信的服务器,延时肯定是很高的。

游戏分区的架构特性,决定了游戏的架构一般不是分布式集群的架构(以下简称为集群架构)。身为玩家的你们都知道,比如我是北京电信的玩家,然后登陆上海电信的游戏服务器,这个时候,一般你都会发现你的游戏角色的属性都会回归你刚注册的时候(针对绝大数游戏,当然有些游戏也不是这样设计的,这里就不做过多介绍)。从这点我们可以判断出,不同地域的游戏部署,应用层和数据库都是独立分开部署的。而我们传统的分布式集群架构,不管你从北京登陆,还是从上海登陆,你的用户数据都是唯一的。因为这种集群架构,底层数据库并没有独立开。

游戏分区的架构特性,决定了游戏架构的扩展性非常好。所谓的数据库垂直分区、水平分区,又比如mysql的主从读写分离,这种数据库层次的扩展,是很繁琐的,一般都是应用于我们的集群架构中。而我们的游戏架构呢,简单点的话,我们只需要一台服务器部署应用,一台服务器部署数据库即可。如果用户量增加,比如上海电信的用户量增加,一台服务器和一台数据库扛不住的时候。这个时候,我们简单增加一个区即可,再独立部署一台应用和一台数据库即可。因而就有了上海电信一区,上海电信二区这样的区分了。

传统IDC机房部署游戏,地域之间访问的延时性,因而就形成了这种很强的地域性分区。如果我们通过云来部署,这种分区上有什么区别呢?我们知道,云主机网络都是BGP(多家运营商接入),从而就有效解决了传统机房部署遇到的问题——不同地域不同运营商的玩家访问的延时问题。所以我们通过云来部署的游戏应用的分区,就没有北京电信分区、上海电信分区之说了。我们就可以简单的叫为一区、二区、三区等,然后我们还可以为不同区取个好听的别名。比如一区之风云再起,二区之逐鹿中原,三区之雄霸天下。

分区只是游戏行业一个很突出的特点,几乎所有类型的游戏都具有这个特点。但不同游戏的类型,在架构及技术上是有所区别的。游戏按照应用划分,主要分为页游、手游和端游。但页游、手游和端游具体在架构及技术上有什么区别呢?

页游与手游、端游的架构区别:
页游是网页游戏的简称,这类web游戏应用,都是属于B/S架构的范畴。需要注意的是,这里我说的网页游戏,以及本文所介绍的游戏架构,并不包括单机游戏的。如果是单机游戏的话,根本不用跟服务端进行通信,那就谈不上什么架构不架构的了。
手游是手机游戏的简称,端游也就是客户端游戏的简称,手游和端游的特点,需要在手机、电脑上安装客户端。所以手游和端游就是典型的C/S架构了。
页游是B/S架构,手游和端游是C/S架构,说到这里,可能不需要我再多说。做过技术的,可能比我还要了解B/S与C/S有什么区别吧。B/S的架构基于浏览器,所以用户不用关心我们程序的升级。当我们程序升级,我们只需要在我们服务器端更新一下,客户下次浏览器访问,会自动把最新的数据返回。而我们C/S的架构,每次我们程序升级,可能都需要客户手动在手机或者电脑上下载最新的客户端或者升级包进行更新。

页游、手游、端游的技术区别:
页游、手游、端游后端的技术的话,可能都相差不多,主要技术区别在于前端。页游的话,采用html5、flash等前端技术。而手游,如果是Android系统的话,采用java技术。如果是IOS,主要采用object c。那端游呢,当然C++是首先了。

好了,简单的介绍这里,希望大家支持原创文章!也希望大家多多分享自己的心得和经验!本文有什么不足的地方,希望大家多多补充以及拍砖!

我为自己带盐,原创作者:乔锐杰

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,905评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,140评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,791评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,483评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,476评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,516评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,905评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,560评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,778评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,557评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,635评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,338评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,925评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,898评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,142评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,818评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,347评论 2 342

推荐阅读更多精彩内容