首页 新闻 会员 周边 捐助

redis 消息队列的意义在哪

0
悬赏园豆:5 [已解决问题] 解决于 2023-02-06 17:21

拿到数据库数据缓存好以后,左进右出的原则,但是使用时直接取走 ,下次再使用时又需要对数据库查询 这样做意义在哪

缘—的主页 缘— | 初学一级 | 园豆:158
提问于:2023-02-02 14:14

请大神解惑

缘— 1年前
< >
分享
最佳答案
0

消息队列就是为了:异步

收获园豆:5
talentzemin | 小虾三级 |园豆:775 | 2023-02-03 15:15
其他回答(2)
0

意义之一在消息的发布与订阅(pub/sub),比如 publish and subscribe overview

dudu | 园豆:30778 (高人七级) | 2023-02-02 14:35
0

没有太理解你描述的场景。
我可以讲下我之前使用过的一个场景。
当时我们每小时会产生一批视频,然后需要用机器学习来离线处理视频,提取精彩部分再推送给相应的用户。当时就使用了redis来做消息队列,生产者消费者模型。
生产者:产出一批视频,按顺序写入到redis中
消费者:按顺序一个一个处理

我个人理解的好处:

  1. 用Redis做消息队列可以根据消息的优先级(加权,产生的时间或者按需)来进行消费,不会乱序
    2.消费者消费能力不足的时候,加机器扩容来提高消费能力更简单。

当然了,如果使用MySQL这些都是能做到的,但是考虑到性能以及开发成本,选择Redis来做消息队列更好。进一步如果有更高的要求可以直接用Kafka之类的消息队列组件来做。

symons | 园豆:202 (菜鸟二级) | 2023-02-03 01:55

你写入redis是按键值写入的吗

支持(0) 反对(0) 缘— | 园豆:158 (初学一级) | 2023-02-03 09:40

leftpush rightpop

支持(0) 反对(0) 缘— | 园豆:158 (初学一级) | 2023-02-03 09:41
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册