队列拆分与优先级

别把所有消息塞进一个队列

不同任务应该进入不同队列:

队列拆分

不同任务进不同队列,按优先级隔离

realtime_dispatch
房间实时分发高优先
system_notice
系统公告(独立高优)高优先
gift_event
礼物展示与账务后处理高优先
content_audit
内容审核与风控普通
message_persist
消息落库与回放普通
stats_event
在线数、弹幕数、互动统计低优先

为什么要拆

  • 隔离故障:落库慢不影响实时分发。
  • 独立扩缩容:礼物队列可以单独加实例。
  • 优先级保障:高优消息不被普通消息挤掉。

如果所有消息共用一个队列,普通弹幕的高峰会把礼物、管理消息积压住——这不可接受。

高优通道

  • 系统公告、礼物、管理消息走独立高优先级通道。
  • 高优队列即使积压,也要优先消费。
  • 普通弹幕可以降级、丢弃,高优消息要保送达。

队列的消费

  • 每个队列有独立消费组。
  • 消费能力按队列需求配置(礼物 < 落库 < 统计)。
  • 消费延迟要监控,超阈值告警。

一句话

队列拆分 = 按任务分队列 + 按优先级隔离。让礼物、管理消息有自己的快车道,普通弹幕的高峰不会拖垮重要消息。

下一节看投递语义与消费幂等。

发现内容有问题?

告诉我们哪里需要改进。