金庆的专栏

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  423 随笔 :: 0 文章 :: 454 评论 :: 0 Trackbacks
网游服务器 Services-based 和 Cells-based 架构

(金庆的专栏 2018.3)

无缝世界网游服务器架构的设计思路
http://blog.csdn.net/SmartTony/article/details/6842065
提出了2种网游服务器架构:

* Services-based architecture 基于服务的架构
* Cells-based architecture 基于cell的架构

基于服务的架构按功能划分成不同服务,不同服务实现于不同的进程。
而基于cell的架构使用相同的Cell进程组成一个集群,每个Cell进程包含全部的功能。

基于服务的架构一直是主流的架构,自从 microservice 和 service mesh 概念相继流行,
基于微服务的架构应该会成为未来的方向。

在无缝大地图网游中,应该用基于cell的架构来实现地图及相关功能,
其他与位置无关的功能则应该尽量按服务实现。
考虑到服务来回调用延时较大,对于实时性强的功能,如PK也应该在cell上实现。

可以考虑客户端通过专门的网关来连接cell, 使用udp/kcp来减小时延。
而其他非实时性服务由Tcp网关转发。
服务器内部可全部统一采用 gRPC.

posted on 2018-03-10 18:03 金庆 阅读(528) 评论(0)  编辑 收藏 引用 所属分类: 2. 网游开发

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理