- 就是redis版本的mq - redis5.0版本新增 - 是一个消息链表 - 将所有加入的消息都串起来,每个消息都会有一个唯一的ID和对应的内容 # 概念 - message content 消息内容 - consumer group 消费组,通过xgroup create命令创建,同一个消费组可以有多个消费者 - last_delivered_i 游标,每个消费组会有个游标,任意一个消费者读取了消息都会使游标往前移动 - consumer 消费者,消费组中的消费者 - pending_ids 消费者会有个状态变量,用于记录被当前消费者已读取但未ack的消息id。如果客户端没有ack,这个变量里面的消息id会越来越多,一旦某个消息被ack他就开始减少。这个变量在redis官方被称之为PEL。记录了当前已经被客户端读取的消息,但是还没有ack,他用来确保客户端至少消费了消息一次,而不会在网络传输的中途丢失了没处理