RabbitMQ的推模式和拉模式

推模式: 消息中间件主动将消息推送给消费者(有多少就消费多少)

拉模式: 消费者主动从消息中间件拉取消息(可指定消息数量)

RabbitMQ主要基于"推模式"工作的

1.用RabbitMQ的SDK实现推/拉模式

①推:channel.basicConsume

②拉:channel.basicGet

2.用SpringBoot实现推/拉模式

①推:@RabbitListener

②拉:rabbitTemplate.receive( 填需要拉取消息的队列 )

3.总结:

①:推模式: 对消息的获取更加实时,适合对数据实时性比较高时,如:实时数据处理,如监控系统,报表系统等

②:拉模式: 消费者可按自身处理速度来消费,避免消息积压,适合需要流量控制,或需要大量计算资源的任务,拉取模式允许消费者在准备好后再请求消息,避免资源浪费.

相关推荐
今天AI了吗7 分钟前
AI工作流的自动化趋势:从手动实验到自主Agent的研究范式转变
运维·数据库·人工智能·sql·机器学习·自动化·github
xcl092510 分钟前
宠物救助领养系统实战开发指南:从需求分析到部署上线
java·mfc·宠物
考虑考虑18 分钟前
arthas使用
java·运维·后端
xcl092519 分钟前
从零开发流浪宠物领养平台:技术选型与核心模块设计
java·spring boot·宠物
Dovis(誓平步青云)29 分钟前
模拟器横评:电脑上看小说、追短剧用什么模拟器?MuMu、雷电、腾讯手游助手实测
android·java·服务器·前端·javascript·电脑
JienDa40 分钟前
我做了一款不依赖 AI 的离线传统术数排盘工具:Electron、Vue3 与 Java 17 的完整实践
java·人工智能·electron
非凡ghost1 小时前
用 Kotlin 和 Jetpack Compose 重写的安卓视频播放器,原生体验有多流畅?
android·java·kotlin·音视频·软件需求
ttwosix1 小时前
JavaEE初阶 多线程 3
java·开发语言
asdfg12589631 小时前
一个例子通俗理解Java中正则表达式用法
java·正则表达式
一嘴一个橘子1 小时前
MyBatis‑Plus Service 层常用自带方法
java