文章详情页
java - 并发操作下关于队列的疑问?
浏览:152日期:2023-10-26 15:47:21
问题描述
常用的rabbitmq,activeMq队列,多个消费者或者多个线程去取队列中的数据,会不会出现不同消费者同时到达取到同一个数据的情况?目前只知道redis由于是单线程的,做队列的时候可以避免这种情况。
问题解答
回答1:消息队列的发布订阅模式有多种,有一个消息多个消费者都能获取到的模式,有一个消息发送到指定消费者模式,选择合适你自己的~你说的这种可以用rabbitmq的direct模式
回答2:任何消息队列,只要自称是消息队列服务的,都会保证这点,无须担心。但要注意的是,消息队列有两种模式,生产者消费者模式和发布者订阅者模式,前者保证每条消息只会被消费一次,后者保证每条消息能达到所有的订阅者,因此被消费的次数不确定。
标签:
java
相关文章:
1. docker镜像push报错2. docker-machine添加一个已有的docker主机问题3. node.js - node exec 执行没反应4. dockerfile - 我用docker build的时候出现下边问题 麻烦帮我看一下5. angular.js - angularjs的自定义过滤器如何给文字加颜色?6. mac里的docker如何命令行开启呢?7. 关于docker下的nginx压力测试8. python 计算两个时间相差的分钟数,超过一天时计算不对9. angular.js - 指令下的指令 面对上级指令ng-repeat的时候 ng-controller会出现多次的问题?10. java - servlet的init方法和选择Filter的init方法来加载配置文件,二者有何区别?
排行榜

网公网安备