文章详情页
java - 并发操作下关于队列的疑问?
浏览:204日期:2023-10-26 15:47:21
问题描述
常用的rabbitmq,activeMq队列,多个消费者或者多个线程去取队列中的数据,会不会出现不同消费者同时到达取到同一个数据的情况?目前只知道redis由于是单线程的,做队列的时候可以避免这种情况。
问题解答
回答1:消息队列的发布订阅模式有多种,有一个消息多个消费者都能获取到的模式,有一个消息发送到指定消费者模式,选择合适你自己的~你说的这种可以用rabbitmq的direct模式
回答2:任何消息队列,只要自称是消息队列服务的,都会保证这点,无须担心。但要注意的是,消息队列有两种模式,生产者消费者模式和发布者订阅者模式,前者保证每条消息只会被消费一次,后者保证每条消息能达到所有的订阅者,因此被消费的次数不确定。
标签:
java
相关文章:
1. dockerfile - 为什么docker容器启动不了?2. android - WebView加载天猫等购物网页出问题?3. 垃圾回收 - java 如何手动回收对象4. nignx - docker内nginx 80端口被占用5. javascript - vue错误提示 Cannot read property ’beforeRouteEnter’ of undefined6. 利用css3 translate来代替传统的修改left和top实现动画,触发webkit的GPU加速渲染功能实现流畅的动画效果7. javascript - typescript关于接口,对象字面量额外属性检测问题,为什么使用断言或者变量时就不会检测额外属性?8. javascript - 手淘国际版预先加载的html是如何实现的?9. css3:flex排版问题10. css - 有没有办法自定义 border 为 dashed 时的虚线间距?
排行榜

网公网安备