Go游戏服务器开发的一些思考(十六):IO游戏服务器架构

本文详细探讨了IO游戏的大区大服服务器架构,包括架构类型、最小架构集及各组件职责。Login负责登录,Room处理核心房间玩法,Base处理个人业务,NodeMgr进行服务发现,Hub转发跨节点消息,Cache确保玩家数据的运行时存储,DB负责持久化。架构特点包括Cache的高可靠性、服务节点的去中心化和无状态化、动态增减节点和简化服务器间通信。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

服务器架构类型

本系列第3章中,有段落简单介绍过 服务器架构类型。对于IO游戏来说,通常会是大区大服类型

本文将详细介绍,大区大服类型的服务器架构

架构图

这里写图片描述

  • 后缀(N),代表可以多开
  • 绿色框,代表各类服务都会去连接
  • 黄色框,代表各类服务有需求的都会去连接
  • 虚线,代表用到时连接
  • 实线,代表长连接

以上为一个IO游戏服务器架构的最小架构集

最小架构集

  • Login,负责登录逻辑
  • Room,负责核心房间玩法
  • Base,负责个人业务逻辑
  • NodeMgr,负责节点管理,服务发现
  • Hub,负责转发跨节点消息
  • Cache,玩家数据中心(运行时)
  • DB,玩家数据中心(持久化)

架构特点

  • 引入Cache服务节点