博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
online游戏服务器架构--综述
阅读量:7061 次
发布时间:2019-06-28

本文共 773 字,大约阅读时间需要 2 分钟。

到了新公司,初涉了游戏编程,但是我关注的并不是游戏的处理逻辑,而是游戏服务器的架构,摩尔庄园游戏已经很流行了,它的网络处理逻辑并不是很特别,但是却值得我花一些时间去体会,这几篇文章就论述一下摩尔庄园online服务器的架构,当然这里并没有泄露公司机密的意思,因此代码都经过了我的处理,在可以不引用代码的情况下,我尽量不引用源代码。

摩尔庄园的大致架构分为客户端,登录服务器,switch服务器,online服务器,其中online服务器又连接了数据库代理服务器,具体见下图:

客户端输入账号和密码之后发往登录服务器,登录服务器验证用户信息是否正确,这是前端处理部分,如果信息正确,那么将进入后端处理,客户端将发送一个登录包到switch服务器,switch服务器维护着所有的online子进程的列表,所谓的online子进程就是逻辑处理进程,后面将会看到,客户端将显示从switch服务器得到的所有的online子进程的负载情况,然后用户选择一个online子进程作为自己将要登录的服务器,后面将会看到online子进程不处理任何网络连接,所有的网络连接由online父进程处理,一个父进程携带n个子进程,由配置文件决定,然后后期的处理在逻辑上就是客户端和选中的online子进程的了,online父进程作为路由将请求路由到online子进程。

Online总体分为几个部分:父进程网络处理;父进程共享内存组织;子进程业务逻辑处理。其中子进程的业务逻辑处理器又分为协议无关的处理和协议相关的处理,在协议相关的处理部分又可进一步划分为数据无关的业务处理和数据相关的业务处理以及事件的处理,这三个逻辑分别路由到三个子逻辑处理器

 本文转自 dog250 51CTO博客,原文链接:http://blog.51cto.com/dog250/1274109

转载地址:http://uhfll.baihongyu.com/

你可能感兴趣的文章
JavaScript高级
查看>>
静态成员函数访问构造函数
查看>>
scla-基础-函数-元组(0)
查看>>
How to Convert a Single-Instance ASM to Cluster ASM [ID 452758.1]
查看>>
触发a标签
查看>>
所有Windows7下游戏的全屏问题
查看>>
UIImage转换成UIView
查看>>
一种专门用于前后端分离的web服务器(JerryServer)
查看>>
Java连接访问Oracle--Connection.setSavepoint()方法使用
查看>>
LeetCode OJ:Maximal Square(最大矩形)
查看>>
抽象工厂 C++实现
查看>>
[KMP]字符串匹配算法
查看>>
Copies in Seconds
查看>>
范内瓦·布什发表《诚如所思》,被信息界公认为是信息科学经典之作
查看>>
javascript基础修炼(10)——VirtualDOM和基本DFS
查看>>
算符优先文法,中缀式求值,栈的典型应用
查看>>
垃圾收集器(一)
查看>>
[转] 随机数是骗人的,.Net、Java、C为我作证
查看>>
第一天
查看>>
VUE基础插值表达式
查看>>