Juya Cai

高效消息处理系统设计

大部分的后端系统依赖于大量的消息处理实现各种功能服务,架构高效的消息处理系统是非常有必要的。这里笔者简单记录下日常开发常用的高效消息处理系统的设计思路。 设计消息处理系统时,我们要明确三个角色: 消息生产者:产生消息的对象(接收到来自网络中的数据包,解析适配成系统内部消息,这种角色称为消息生产者) 消息消费者:消费消息的对象,也就是service。接受消息提供服务。 消息分发...

关于网络同步的经验与思考

前言 截至目前,笔者也接触了一些游戏项目的开发,接触过一些网络同步方案,在这里做个总结以及提出一些自己的思考。笔者目前接触的网络同步方案大致划分为三种:快照同步、状态同步和帧同步。具体采用什么方案,需要根据游戏需求以及服务器的架构需求来指定,而不是盲目的选择。 快照同步 这是笔者接触比较多的同步方法,也是三种同步方案中最为简单的。快照同步常用于逻辑简单的游戏,多为房间类型的休闲游戏,卡牌...

属性同步--MMO服务器开发技术点记录

在MMO游戏中,玩家实体必然存在大量的状态,这些状态被称为属性状态,如hp、mp、攻击力、防御力等。不同的实体的组件会影响到这些属性状态的值,需要进行同步。不能说在每次修改某位玩家实体的属性状态后就要发送一个rpc去通知客户端。每个属性的变化都去进行一条rpc的通知,在实现上也是比较麻烦。 比较好的方案是提供属性同步功能,当属性状态发生改变时,就主动地通知; 属性同步设计 属性同步分为...