当前位置: 首页 > article >正文

RabbitMQ案例

1. 导入依赖

 <!--AMQP依赖,包含RabbitMQ-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-amqp</artifactId>
        </dependency>

发送消息


注入RabbitTemplate

@Autowired
RabbitTemplate rabbitTemplate;

  //队列
        String queueName = "test.query";
        //消息
        String message = "hello rabbitmq";
        //发送消息
        rabbitTemplate.convertAndSend(queueName,message);

监听接收消息

只需要在方法上添加注解即可

 @RabbitListener(queues = "test.query")
 @RabbitListener(queues = "test.query")
    void contextLoads(Object msg) {
        System.out.println("msg = " + msg);
    }

work模型

1. 多个消费者绑定同一个队列,提升处理消息的速度

2. 同一个消息只会被同一个消费者处理

3. 通过prefetch限制一次只能消费一条消息,处理完才能处理下一条,实现能者多劳

spring:
  rabbitmq:
    host: localhost
    port: 5672
    virtual-host: /hmall
    username: hmall
    password: 123
    listener:
      simple:
        prefetch: 1 # 每个消费者一次消费一个消息

嘿嘿嘿李博文到此一游


http://www.kler.cn/a/469639.html

相关文章:

  • ollama安装及本地部署开源大模型
  • Allure 集成 pytest
  • 《Vue3实战教程》19:Vue3组件 v-model
  • element-plus大版本一样,但是小版本不一样导致页面出bug
  • Speech Recognition vs. Voice Recognition | 语音识别工作原理 | 模型训练 | 应用
  • AlphaPi相关硬件驱动提取
  • 【ArcGIS Pro二次开发实例教程】(2):BSM字段赋值
  • JAVA类和对象练习
  • Vue2: table加载树形数据的踩坑记录
  • 【数据结构05】排序
  • centos,789使用mamba快速安装R及语言包devtools
  • MySQL 的事务与多版本并发控制(MVCC)的那些事
  • Synthesia技术浅析(二):虚拟人物视频生成
  • 为什么HTTP请求后面有时带一个sign参数(HTTP请求签名校验)
  • SAP SD学习笔记26 - 贩卖契约(框架协议)的概要,基本契约 - 数量契约
  • Ubuntu创建python虚拟环境
  • 太速科技-747-4通道 500Msps 12bit 直流耦合 PCIe采集卡
  • 您有一份 Apache Flink 社区年度报告请查收~
  • Node.js 模块系统
  • Linux-----进程处理(execve执行可执行文件)
  • 青少年编程与数学 02-006 前端开发框架VUE 05课题、使用模板
  • 结合 nc 工具利用笑脸漏洞(Smile Bug)攻击 Metasploitable2 Linux
  • javadoc命令的简单使用
  • RabbitMQ通过代码创建交换机和队列
  • 分布式任务调度xxl-job入门案例
  • Chapter 1 Understanding Large Language Models