redis消息队列

redis 的list类型实现消息队列:

list结构实现的优缺点:

2、pubsub模式(消息发布订阅)实现消息队列

pubsub的优缺点:

命令行实现:

pub:第一次发送有两个接收,第二个只有一个接收

sub接收:

第一个sub接收的信息通道(order.p1)使得pub发送第二次消息没有接受到

第二个sub接收的频道(order.*)接收order.后面所有的频道,使得两次pub发送的消息都接收到了

stream实现消息队列:

具体的实现:

往里面存数据:

$:则实时取数据,在消息存放的时候才会获取

0:取第一个数据,始终取第一个数据

优缺点:

4、消息费者组(consumer Group):

创建一个消费者组: XGROUP CREATE s1 g1 $ (s1队列名称,g1消费者组的名称)

消息消费者命令:

确认消息命令:XACK key group ID ID ... (如果消息只是拿到,没有确认的话,消息会存放在expending-list里面)

查看pending-list的命令:XPENDING key group \[IDLE min-idle-time start end count consumer]

stream group的优点:

三种实现消息队列的比较:

5、通过streamGroup消费者组,就可以实现消息队列(通过java和lua脚本)

相关推荐
今天的砖头有点烫手啊5 小时前
接口太慢?Spring Boot 缓存体系 @Cacheable 全链路拆解
spring boot·后端·缓存
TDengine (老段)6 小时前
TDengine taosAdapter — 多协议网关详解
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
Nturmoils6 小时前
SQL Server 迁移到 KingbaseES:一次复杂 BI 查询的性能实测
数据库
xcLeigh6 小时前
Go入门:短变量声明的陷阱与最佳实践
java·redis·golang·教程·变量
szephyr6 小时前
腾讯云 ADP 智能体的 Skills 版本回滚总是回到旧配置,是缓存没清还是版本管理没开?
java·缓存·腾讯云
今天AI了吗6 小时前
MCP 协议打通 AI 与国产数据库,SQL 调优全流程一站式闭环
数据库·人工智能·sql
灯澜忆梦7 小时前
【MySQL11】进阶篇 | 索引_#3使用规则
数据库·sql·mysql·性能优化
名字还没想好☜7 小时前
Go 的 sync.Cond 实战:用条件变量做等待/通知,比忙轮询省 CPU
开发语言·数据库·后端·golang·go
wWYy.7 小时前
Mysql:有哪些锁?
数据库·mysql
李可以量化7 小时前
Tornado 从了解到精通(一)下:异步与非阻塞 IO 核心原理
java·数据库·tornado