我是一名RabbitMQ用户,正在研究Redis,有两个关于pub/sub机制的问题1.我可以发布消息到系统中,每个客户端(消费者)删除其他客户端的条目吗?我想发布100个任务,但每个任务只能由1个订阅者处理。
RabbitMQ
Redis
emeijp431#
1)这不是pub/sub的工作方式。发布并不关心或知道是否被接收,它只是发布一条消息。每个订阅的订阅者都会收到它,你不能阻止它2)这取决于你处理客户的逻辑。听起来,redis pub/sub可能不是你要找的系统/模式。你应该特别关注zeromq,push和pull套接字,它们不是发布消息,而是一次将消息推送到特定的套接字。如果你通读starter documentation,很多模式都有解释,有些会适合你的特定情况。
zeromq
push
pull
nwlls2ji2#
你可以使用Redis列表在消费者中弹出数据。https://redis.io/docs/data-types/lists/
2条答案
按热度按时间emeijp431#
1)这不是pub/sub的工作方式。发布并不关心或知道是否被接收,它只是发布一条消息。每个订阅的订阅者都会收到它,你不能阻止它
2)这取决于你处理客户的逻辑。
听起来,redis pub/sub可能不是你要找的系统/模式。你应该特别关注
zeromq
,push
和pull
套接字,它们不是发布消息,而是一次将消息推送到特定的套接字。如果你通读starter documentation,很多模式都有解释,有些会适合你的特定情况。nwlls2ji2#
你可以使用Redis列表在消费者中弹出数据。
https://redis.io/docs/data-types/lists/