面试真题

数据库 · 中等 · 腾讯

redis的两种发布订阅的实现

中等 数据库 🎤 腾讯
参考答案
结论:Redis发布订阅有两种典型实现:1) 原生PUB/SUB(含频道与模式订阅),基于字典维护订阅链表,消息实时推送但不持久化;2) 基于List或Stream模拟的消息队列式发布订阅,如LPUSH+BLPOP或XADD+XREAD,支持持久化和消费组。原理:原生Pub/Sub通过subscribe将客户端加入频道链表,publish遍历链表发送;List/BLPOP为阻塞弹出,Stream提供消费组保证多消费者。差异:原生适合即时广播,无持久化;List/Stream适合可靠消息分发。
题目整理自公开面经,答案由校招宝自研生成,仅供参考