文章目录

  • 1)平台服
    • 六、guild_server工会服务器
    • 七、friend_server好友服务器
    • 八、team_server队伍服务器
    • 九、activity_server活动服务器
    • 十、trade_server交易服务器
      • 1)简单定义
      • 2)服务器备注
      • 3)逻辑流程
    • 十一、service_manager_server服务管理服务器
    • 十三、account_server账号服务器
    • 十六、dbmanager_server管理dbc的中转服务器
    • 十七、global_server全局服务器
    • 十八、match_server匹配服务器
    • 十九、world_server世界服务器
    • 二十、idip_server 补偿管理服务器
  • 2)普通服
    • 一、game_server逻辑服务器
    • 二、gate_server网关服务器
    • 三、mail_server邮件服务器
    • 四、router_server路由服务器
    • 五、scene_server场景服务器
    • 十四、cache_server缓存服务器
      • 1)简单定义
      • 2)服务器备注
    • 十五、dbcache_server数据库管理服务器
      • 1)简单定义
      • 2)服务器备注
      • 3)相关思考

1)平台服

  • 平台服务器定义
    平台服务器一般都用于处理全局相关功能,涉及玩家登陆,角色唯一性认证,跨区,全区排行榜等。主要包括以下几种:

六、guild_server工会服务器

七、friend_server好友服务器

八、team_server队伍服务器

  • 定义
    负责管理玩家队伍的数据的服务器

九、activity_server活动服务器

十、trade_server交易服务器

1)简单定义

用于管理限制交易会所、拍忙行的数据,商店的购买等数据

2)服务器备注

①个人每日限制、每周限制、终身限制放在逻辑服务器gs处理
②拍卖行等全区统一限制的东西,放在交易服处理

3)逻辑流程

①先判断有没有购买资格、有没有钱,符合不符合开商店的条件
②先扣钱,再触发购买的行为树节点事件

十一、service_manager_server服务管理服务器

  • 定义
    用于服务器的管理,重启和从共享内存restore恢复,当注册的服务器节点挂了,负责拉起相关的服务器节点

十三、account_server账号服务器

  • 简单定义
    登陆服务器进程,玩家登陆时首先连接account_server服务器。

十六、dbmanager_server管理dbc的中转服务器

  • 简单定义
    管理多个dbcache服务器,用于往mysql存数据,后期会根据一定规律将玩家、工会数据按照地域或创建先后顺序分配到不同的dbcache_server去存储

十七、global_server全局服务器

  • 简单定义
    全局服务器,处理所有区服的全局信息,比如处理所有区服的主播排名等

十八、match_server匹配服务器

  • 定义
    用于游戏的匹配业务

十九、world_server世界服务器

  • 简单定义
    管理多个逻辑服务器

二十、idip_server 补偿管理服务器

  • 简单定义
    idipserver:一个管理服务器,用来给玩家发邮件,补偿等特殊操作。

2)普通服

  • 普通服务器定义
    普通服一般都是涉及单个区服相关的,和其他区服往往是独立开来的,一般包括:

一、game_server逻辑服务器

  • 定义
    逻辑服务器,一般的需要即时反馈的逻辑放在这里处理(战斗相关的逻辑都可以放在这里)
  • 与其他服务器的区别
    后期可能根据场景的不同或分线的不同,开多个逻辑服务器负载均衡游戏玩家在线的压力

二、gate_server网关服务器

  • 简单定义
    网关服务器进程,gatewayserver相当于游戏客户端与mmo服务器之间交换数据的桥梁,游戏客户端与mmo服务器中其他服务器进程交互都是通过gatewayserver进行转发的。网关服务器收到玩家的消息后,根据消息类型转发给对应的服务器进程,同理各个服务器进程也是先把消息发给网关服务器,然后再由网关服务器发给玩家。

三、mail_server邮件服务器

四、router_server路由服务器

五、scene_server场景服务器

  • 简单定义
    场景服务器进程,mmo服务器中主要的服务器进程,承担了大量的服务器端逻辑操作,比如玩家在游戏地图中移动,跳转地图,玩家PK,与npc的交互,怪物的攻击,移动等等。在场景服务器进程中存在一个场景玩家对象,该玩家对象身上又存了很多与玩家相关的数据与操作,比如装备及其装备的打造,升级;坐骑及其参战,休息;图鉴及其激活,升级等。
  • 链接
    传送门

十四、cache_server缓存服务器

1)简单定义

缓冲服务器,用于给客户端推送不同逻辑服务器上的数据,例如各种人物状态数据等

2)服务器备注

1)libevent配合redis完成异步命令输送和回调结果

十五、dbcache_server数据库管理服务器

1)简单定义

存储服务器进程,通过该服务器进程进行数据持久化操作,比如把数据存到mysql数据库。

2)服务器备注

1)mysql集群注意限频单database单表20M每秒输送数据,否则mysql有可能被打崩

3)相关思考

①有遇到面试说dbcache是dbmanager的子进程:

1、但是如果是子进程的话,那么这样只能部署在同一台机器上,而且得用到waitpid这个接口,要么屏蔽sigchld这个信号,要么用孙子进程去做,否则至少得阻塞1到2秒
2、但是如果不用子进程,用中心服务器去扩缩容的时候,得用脚本去启动这个进程,然后这个进程再去自动上报给DBManager,这样可以部署在不同物理机,但是1、增加了网络延时,2、需要对这个进程进行验证

游戏思考13:关于MMORPG游戏服务器的种类及作用(以后会同步更新github,持续更新系列,目前有20个服务器说明,22/10/20)相关推荐

  1. 补充游戏思考13:游戏服务器杂谈(主要讲mmorpg,年更系列,未完待续10/20)

    文章目录 一.冒险岛状态同步数据的举例说明 1)基于帧的人物状态同步 2)基于预言的人物状态同步(插值计算) 3)基于客户端的怪物状态同步 4)基于服务器的怪物状态同步 一.冒险岛状态同步数据的举例说 ...

  2. 虚拟人生服务器mcbbs,[创世|管理|传送][SCT]Multiverse-Core —— 多世界插件 [持续更新] [1.17-1.4.5]...

    config.yml .. #  -------------------------------------------------------------------------  # # MV2的 ...

  3. springboot项目和云服务器,以及域名的申请和使用(后续持续更新)

    来记录一下做一个springboot项目以及上传至云服务器上过程 新建并发布项目 注册域名: 域名备案 发现的问题: 在阿里云上面搞了一台个人服务器,当时是双十一打折买的,229好像. 有了服务器当然 ...

  4. 几乎所有的RPG游戏(一种源自《龙与地下城》的游戏类型)在进入游戏时都会让用户自己来创建自己喜欢的角色。本次上机要求编写一个简化的创建游戏角色的程序。

    一:题目分析 1.功能描述 几乎所有的RPG游戏(一种源自<龙与地下城>的游戏类型)在进入游戏时都会让用户自己来创建自己喜欢的角色.本次上机要求编写一个简化的创建游戏角色的程序. 2.游戏 ...

  5. RPG角色生成器 1.功能描述 几乎所有的RPG游戏(一种源自《龙与地下城》的游戏类型)在进入游戏时都会让用户自己来创建自己喜欢的角色。要求编写一个简化的创建游戏角色的程序。 2.游戏角色应

    RPG角色生成器 1.功能描述 几乎所有的RPG游戏(一种源自<龙与地下城>的游戏类型)在进入游戏时都会让用户自己来创建自己喜欢的角色.本次上机要求编写一个简化的创建游戏角色的程序. 2. ...

  6. 使用 Go 语言开发大型 MMORPG 游戏服务器怎么样?(非常稳定、捕获所有异常、非常适合从头开始,但大公司已经有现成的C++框架、所以不会使用)

    使用 Go 语言开发大型 MMORPG 游戏服务器怎么样?(非常稳定.捕获所有异常.非常适合从头开始,但大公司已经有现成的C++框架.所以不会使用) 参考文章: (1)使用 Go 语言开发大型 MMO ...

  7. 游戏服务器技能系统,MMORPG游戏服务器技能系统设计【上篇】 - 踏踏实实,认真工作 - CSDN博客...

    MMORPG游戏服务器技能系统设计[上篇] 收藏 本文主要从一个程序员的角度阐述一下mmorpg服务器技能系统的程序框架设计,最近在做这个,就当做一个总结吧,其中某些概念可能没有解释清楚,欢迎大家拍砖 ...

  8. 论MMORPG游戏服务器架构

    就我见到过的MMO服务器架构做一个总结吧. 第一种,靠一个matchmaking服务器来做负荷均衡,这种架构比较适合大厅游戏或者副本游戏.方法是用一个服务器作为登陆服务器,所有玩家请求连接的要求都被该 ...

  9. mmorpg 游戏服务器设计

    MMORPG不同于其它的局域网的网络游戏,它是一个面向整个Internet的连接人数过万的网络游戏,因此他的服务器端设计则极为重要 服务器的基本设置 在大型网络游戏里,通常设计为C/S结构,客户端不再 ...

最新文章

  1. 2022-2028年中国充电桩行业深度调研及投资前景预测报告(上下卷)
  2. 在ASP.NET 中实现单点登录
  3. java 解压与压缩代码_Java实现多文件压缩和解压缩代码详解
  4. icon-font与svg
  5. android三种载入图片方式
  6. c++面试准备之螺旋队列
  7. 拆包--缓冲区查找包头及包尾偏移
  8. java.lang.object 下载_java.lang.Object
  9. string和StringBuilder的选择
  10. java案例代码8--最终要随机输出一组出来做为排名
  11. chrome浏览器插件--让你的谷歌浏览器舒适度提升1800%的插件(程序员推荐)
  12. 【Oracle Database】Oracle GoldenGate (single-single)
  13. 京东广告受众基础属性预估
  14. css的盒子模型与定位机制解读随记
  15. distribute by控制分区文件数
  16. Python的Mann-Kendall非参数检验和计算Hurst指数
  17. 小A与欧拉路 (树加边求最小权值欧拉路+树的直径)
  18. STM32 汇编程序——串口输出 Hello world
  19. LinuxMint使用中文输入法
  20. ubuntu 20.04 安装 免费 Beyond Compare对比工具

热门文章

  1. IPhone、Windows Mobil、Symbian、Android移动开发前景分析
  2. 解决VS2008 开发windows mobil及智能设备项目生成速度慢的问题
  3. TensorFlow基础(1)特点安装基本用法
  4. Spark Streaming 图片处理案例介绍
  5. 基于C语言的9*9数独生成器(回溯法)
  6. 既然心里活着的还是那个年轻人,我们申请跟未来的“小程序员”们一起过个节...
  7. 苹果7更新系统后显示无服务器,苹果手机备份还原之后显示服务器問題
  8. 【FPGA教程案例10】基于Verilog的复数乘法器设计与实现
  9. java制作我的世界_Minecraft Java版整合包制作教程
  10. vue 判断字符串是否是英文_vue rules以及原生js判断字符串是否为正整数(正小数)...