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脚本)

相关推荐
2301_8038756140 分钟前
CSS如何制作导航栏平滑移动_使用transition与left属性
jvm·数据库·python
zxrhhm6 小时前
MySQL 8.4 LTS 数据库巡检脚本
数据库·mysql
AI木马人6 小时前
9.【AI任务队列实战】如何在高并发下保证系统不崩?(Redis + Celery完整方案)
数据库·人工智能·redis·神经网络·缓存
2401_883600256 小时前
golang如何理解weak pointer弱引用_golang weak pointer弱引用总结
jvm·数据库·python
aLTttY6 小时前
【Redis实战】分布式锁的N种实现方案对比与避坑指南
数据库·redis·分布式
2301_773553627 小时前
mysql如何评估SQL语句的索引开销_mysql性能追踪与分析
jvm·数据库·python
pele8 小时前
PHP源码运行受主板供电影响吗_供电相数重要性说明【技巧】
jvm·数据库·python
sinat_383437368 小时前
CSS如何实现元素悬浮在页面底部_利用fixed定位与底部间距
jvm·数据库·python
gmaajt8 小时前
mysql如何备份与恢复函数定义_mysql mysqldump导出存储对象
jvm·数据库·python
阿丰资源8 小时前
基于SpringBoot的在线视频教育平台的设计与实现(附源码+数据库+文档,一键运行)
数据库·spring boot·后端