这是 Beta 探索课程,内容结构、实验步骤和示例可能会继续调整。
基础发送流程
最小可用流程
第一版弹幕系统的最小可用发送流程:
一条弹幕的发送流程
用户进入房间,建立连接
01 · 动作
用户发送弹幕
内容 + 房间 + 用户02 · 判断
服务端鉴权
是否登录、是否被禁言03 · 判断
敏感词与频率校验
基础治理04 · 动作
推送给房间内在线用户
实时链路,追求低延迟05 · 动作
异步写入存储
回放、审核、统计两条链路已经出现
注意流程的最后两步:
- 实时链路:鉴权 → 校验 → 推送,追求低延迟。
- 异步链路:落库、统计、审核复盘,可以慢。
这个分离是后续所有架构演进(消息队列、礼物系统)的起点:慢的事别挡住快的事。
发送的时序
- 客户端发送 → 网关快速响应(先给发送者「已发出」的反馈)。
- 实时推送是主路径,异步落库是旁路。
- 发送者自己也能通过广播看到(或本地乐观插入)。
失败怎么办
基础版本也要考虑失败:
- 鉴权失败 → 拒绝,返回原因。
- 命中敏感词 → 拦截或替换。
- 推送失败 → 记录,不阻塞主流程(可重试或丢弃)。
一句话
基础发送流程把系统分成实时 + 异步两条链路:实时保证延迟,异步负责落库与治理。先把这两条链路理清,后面的消息队列就是在为它们分工。
下一节看基础治理——第一版也要做的护栏。
