Skip to content

queue_manager

desperadoccy edited this page May 28, 2024 · 2 revisions

queue_manager模块介绍

queue_manager模块主要用于服务器存储客户端上传的更新,支持缓存更新数量查询,更新获取等等操作。

  • path: 该消息队列管理类的路径
  • receviver: 接收器,用于检测客户端上传的更新是否达到新的一轮聚合条件
  • checker: 检查器,用于检查客户端上传的更新是否接收

现有类介绍

本节下介绍的参数填写在queue_manager字段中

AbstractQueueManager

该类为基类,定义了必须实现的函数,以及基本属性 会自动统计get的调用次数

BaseQueueManager

继承AbstractQueueManager的抽象类,实现了部分功能

SingleQueueManager

维护一个消息队列,所有客户端上传的更新都存于此队列中

QueueListManager

根据客户端数量维护多个消息队列,会根据client上传的group_id将更新存储在对应队列中

receiver

receiver主要用于检测客户端上传的更新是否达到新的一轮聚合条件。 该类主要用于scheduler中,scheduler调度完成后,会调用receiver进行检测,如果检测通过,则触发updater进行聚合。

  • path: 该接收器类的路径
  • params: 初始化该类所需的params

ReceiverCaller

该类为中间类,其他类通过该类与receiver进行交互,该类可以根据不同的receiver调整所需的参数。

reciever现有类介绍

本节下介绍的参数填写在params字段中

AbstractReceiver

该类为基类,定义了必须实现的函数,以及基本属性

NoneReceiver

不进行任何检测,函数主体为pass

NormalReceiver

队列中的更新数量达到一定数量后触发聚合,否则循环等待

MultiQueueReceiver

接收多个队列和多个指定数量为参数 当任一一个队列中的更新数量达到指定数量后返回指定队列id,否则循环等待

TimeSliceWrapper

适用于TimeSlice模式的装饰器,它会在触发receiver前后对timeslice下的event事件进行检测。

  • path: wrapper的装饰器类的路径
  • params: 初始化该类所需的params

checker

checker主要用于检查客户端上传的更新是否接收 该类主要用于queue_manager中,queue_manager接收到客户端上传的更新后,会调用checker进行检查,如果检查通过,则接收更新放入队列中。

  • path: 该检查器类的路径
  • params: 初始化该类所需的params

CheckerCaller

该类为中间类,其他类通过该类与checker进行交互,该类可以根据不同的checker调整所需的参数。

checker现有类介绍

本节下介绍的参数填写在params字段中

AbstractChecker

该类为基类,定义了必须实现的函数,以及基本属性

ALLChecker

所有的更新都接收

SyncChecker

只有当前轮次的更新才接收,陈旧的更新会被抛弃

Clone this wiki locally