美文网首页
游戏服务端架构理解:“服务”的本质

游戏服务端架构理解:“服务”的本质

作者: 小墨哈 | 来源:发表于2020-06-06 00:06 被阅读0次

游戏服务端在整个游戏业务中扮演着提供服务的角色。所谓的“服务”总结下来基本就是三种:网络通信,计算,存储。

网络通信是基础。不管是什么类型的游戏(即时战斗,回合制;卡牌,RPG;滚服,大通服)都需要进行网络通信。网络通信包括客户端-服务端的通信,服务器之间的通信,服务器-外部服务器的通信。
客户端和服务端的通信很好理解,网络游戏中玩家数据都是保存在服务端的数据库中的,客户端所展示的所有的数据,模型等都是从服务端取到的,并且客户端修改玩家数据也是要和服务端进行通信。
服务端之间的通信,服务端的架构可能会存在网关服务器,登陆服务器,聊天服务器,游戏服务器,支付服务器,战斗服务器等多个进程存在,当某个消息到达后会在多个服务器进程之间进行流转才能完成一个操作,因为服务器之间也要进行通信。
服务器和外部服务器的通信,这里所说的外部服务器指sdk服务器等,这些服务器不是游戏开发者管理的,他们之间存在一些数据的传输和确认等操作,因此也会有网路通信。

计算:这里所说的计算泛指业务逻辑执行。
比如战斗。战斗的过程是根据玩家释放的某个英雄的技能,以及基础属性和其他装备,阵容,称号,等属性值或者buff计算出伤害,和一系列的客户端用于展示的数据。这个过程就是在服务端进行一系列的逻辑计算,然后将这些计算出来的数据发给客户端用于展示战斗过程。
再比如购买一个道具,在服务端是先计算是否有足够的货币,如果足够的话,就要将货币减去道具价格对应的货币数量,对剩余货币数量进行保存并给玩家发一个道具。

存储:是指永久性的存储玩家数据。不管玩家下线,或者服务器关闭,都要保证玩家下次进入游戏后,玩家数据(包括货币,装备,阵容,英雄等)都是玩家最后一次操作后的数据,不能被改动。当然要排除一些不需要保存的数据。

综上:不管是多么复杂的游戏业务,基本都是基于这三种基本的服务上发展起来的。理解了服务端的本质后,可以跳出具体的游戏业务玩法,在更高层次上看待如何为游戏业务提供服务。从而在做服务端技术选型以及做架构方案的设计时心中就有了大方向和思路。

相关文章

  • 游戏服务端架构理解:“服务”的本质

    游戏服务端在整个游戏业务中扮演着提供服务的角色。所谓的“服务”总结下来基本就是三种:网络通信,计算,存储。 网络通...

  • Kafka源码分析-Server-网络层(1)

    Kafka服务端的架构 在介绍Kafka服务端的代码前,先从整体了解下Kafka服务端的架构: 网络层 Kafka...

  • 认识skynet(1)--skynet的组织结构

    简介 Skynet是一个轻量级的网络服务器架构,并不是一个完整的游戏服务端。是服务端的最底层框架,和游戏有关的各种...

  • 今日份打卡 124/365

    技术文章4种服务端架构单体架构分布式架构微服务架构serverless架构

  • Testops之路2.Docker入门

    Docker架构 Docker 采用了 C/S 架构,包括客户端(Client)和服务端(Server),服务端通...

  • HTML5布局之路

    Web服务本质 浏览器发请求 --> HTTP协议 --> 服务端接收请求 --> 服务端返回响应 --> 服务端...

  • 基本知识

    1、服务器本质 浏览器发请求 --> HTTP协议 --> 服务端接收请求 --> 服务端返回响应 --> 服务端...

  • 面试官:你说说一条查询SQL的执行过程?

    为了理解这个问题,先从Mysql的架构说起,对于Mysql来说,大致可以分为3层架构。 第一层作为客户端和服务端的...

  • 服务端渲染

    node做服务端渲染例子( 个人理解 无路由无中间件,更容易理解的服务端渲染)

  • 前端知识之HTML内容

    HTML介绍 Web服务本质 浏览器发请求 --> HTTP协议 --> 服务端接收请求 --> 服务端返回响应 ...

网友评论

      本文标题:游戏服务端架构理解:“服务”的本质

      本文链接:https://www.haomeiwen.com/subject/cxnazhtx.html