多个进程去读取redis消息队列是否会发生冲突?

发布于 2022-09-04 13:58:43 字数 91 浏览 14 评论 0

问题

我创建多个进程去同时读取redis做的消息队列 请问这个会发生读取冲突么? 原因是什么呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

作死小能手 2022-09-11 13:58:43

不会冲突,队列中的每个元素只会被读取一次。

酸甜透明夹心 2022-09-11 13:58:43

只是读取没问题。。。

眉目亦如画i 2022-09-11 13:58:43

redis自己保证队列读写的互斥。redis是单线程,工作方式大概是这样的。你的多进程读取其实是可以并行发多个读取请求包,这些请求包到达redis的socket buffer中,redis的处理是串行响应你的请求,无锁。如果哪天redis改成多线程的方式,同样可以通过加锁互斥保证队列的读取不会出事情。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文