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

相关推荐
以神为界7 分钟前
PHP与数据库交互实操:连接方法+SQL注入防范+系统数据库解析
数据库·sql·网络安全·php·web
2401_871696528 分钟前
如何保证MongoDB文档的数据质量_JSON Schema验证规则配置
jvm·数据库·python
z44247532610 分钟前
SQL利用JOIN实现数据关联分析的实操_关联维度表补全信息
jvm·数据库·python
lUie INGA11 分钟前
MySQL事件功能简介
数据库·mysql
maqr_11012 分钟前
SQL如何快速提取分组中最晚时间点数据_结合窗口函数实现
jvm·数据库·python
Shorasul12 分钟前
mysql如何限制特定表的最大存储空间_通过ALTER TABLE设置MAX_ROWS
jvm·数据库·python
214396513 分钟前
如何存储MongoDB的爬虫抓取数据_动态字段与无模式宽容度.txt
jvm·数据库·python
m0_7489203613 分钟前
CSS如何实现网格内绝对定位_利用Grid的relative属性层级控制
jvm·数据库·python
qq_3422958213 分钟前
golang如何优化磁盘IO性能_golang磁盘IO性能优化思路
jvm·数据库·python
weixin_4249993614 分钟前
MySQL中如何使用CAST实现类型转换_MySQL数据类型转换技巧
jvm·数据库·python