【RabbitMQ】| Lion带你 (超详细) 从0到1使用SpringBoot操作RabbitMQ

这篇具有很好参考价值的文章主要介绍了【RabbitMQ】| Lion带你 (超详细) 从0到1使用SpringBoot操作RabbitMQ。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一. 🦁 前言

Spring Boot操作RabbitMQ是一种非常有用的技术,它可以提高应用程序的性能、可靠性和可伸缩性,为开发人员提供更好的开发和维护体验。下面是它的一些优点:

  1. 提高应用程序的可靠性和稳定性。RabbitMQ作为一种基于消息传递的中间件,可以将消息传递给应用程序,从而避免了高流量压力下的系统崩溃。

  2. 提高应用程序的并发性能。RabbitMQ可以作为一种异步消息传递机制,与Spring Boot配合使用可以提高应用程序的并发性能,实现高性能分布式系统。

  3. 实现应用程序的解耦。应用程序与RabbitMQ之间的通信是通过消息队列进行的,从而实现了应用程序的解耦,使得应用程序的开发和维护变得更加容易。

  4. 为应用程序提供大规模数据的处理和传输能力。RabbitMQ可以处理大规模数据的传输和处理,使得应用程序可以更加高效地处理大量数据。

  5. 提高应用程序的可伸缩性。RabbitMQ可以实现应用程序的水平扩展,从而让应用程序可以扩展到更多的服务器和节点上,以处理更大的数据量。

二. 🦁 SpringBoot操作RabbitMQ

Spring Boot操作RabbitMQ是一种非常有用的技术,它可以提高应用程序的性能、可靠性和可伸缩性,为开发人员提供更好的开发和维护体验。以下是一些优点:

  1. 提高应用程序的可靠性和稳定性。RabbitMQ作为一种基于消息传递的中间件,可以将消息传递给应用程序,从而避免了高流量压力下的系统崩溃。

  2. 提高应用程序的并发性能。RabbitMQ可以作为一种异步消息传递机制,与Spring Boot配合使用可以提高应用程序的并发性能,实现高性能分布式系统。

  3. 实现应用程序的解耦。应用程序与RabbitMQ之间的通信是通过消息队列进行的,从而实现了应用程序的解耦,使得应用程序的开发和维护变得更加容易。

  4. 为应用程序提供大规模数据的处理和传输能力。RabbitMQ可以处理大规模数据的传输和处理,使得应用程序可以更加高效地处理大量数据。

  5. 提高应用程序的可伸缩性。RabbitMQ可以实现应用程序的水平扩展,从而让应用程序可以扩展到更多的服务器和节点上,以处理更大的数据量。

Ⅰ. 前期准备工作

1. 创建项目(不细说)

2. 添加依赖

<!-- RabbitMQ起步依赖 -->
<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-amqp</artifactId>
</dependency>

3. 编写配置文件

spring:
  rabbitmq:
    host: 120.79.50.65
    port: 5672
    username: lion
    password: lion
    virtual-host: /

Ⅱ. 创建队列和交换机

【RabbitMQ】| Lion带你 (超详细) 从0到1使用SpringBoot操作RabbitMQ

SpringBoot整合RabbitMQ时,需要在配置类创建队列和交换机并且交换机绑定队列,(以创建topic模式为例)写法如下:

import org.springframework.amqp.core.*;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class RabbitConfig {
//    交换机名
    private final String EXCHANGE_NAME = "boot_topic_exchange";
//    队列名
    private final String QUEUE_NAME = "boot_queue";


    // 创建交换机
    @Bean("bootExchange")
    public Exchange getExchange() {
        return ExchangeBuilder
                .topicExchange(EXCHANGE_NAME) // 交换机类型
                .durable(true) // 是否持久化
                .build();
    }


    // 创建队列
    @Bean("bootQueue")
    public Queue getMessageQueue() {
        return new Queue(QUEUE_NAME); // 队列名
    }


    // 交换机绑定队列
    @Bean
    public Binding bindMessageQueue(@Qualifier("bootExchange") Exchange exchange, @Qualifier("bootQueue") Queue queue) {
        return BindingBuilder
                .bind(queue)
                .to(exchange)
                .with("#.message.#")
                .noargs();
    }
}

Ⅲ. 创建生产者

@SpringBootTest
class Rabbitmq3ApplicationTests {

   @Autowired
   private RabbitTemplate rabbitTemplate;

   @Test
   void contextLoads() {
      /**
       * 发送消息
       * 参数1:交换机
       * 参数2:路由key
       * 参数3:要发送的消息
       */
      rabbitTemplate.convertAndSend("boot_topic_exchange","message","双十一开始了");
   }

}

Ⅳ. 创建消费者

一般来说,消费者和生产者不会在同一个项目中,所以这里创建另外一个项目来创建消费者,也不需要创建队列和交换机,直接监听队列就行。

import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;

@Component
public class Consumer {
//    监听队列
    @RabbitListener(queues = "boot_queue")
    public void listenMessage(String message){
        System.out.println("接收消息:"+message);
    }
}

【RabbitMQ】| Lion带你 (超详细) 从0到1使用SpringBoot操作RabbitMQ

三. 🦁 总结

本文章总结了SpringBoot操作RabbitMQ的各种过程,希望对您有帮助哦!!!咱们下期见!😄文章来源地址https://www.toymoban.com/news/detail-428749.html

到了这里,关于【RabbitMQ】| Lion带你 (超详细) 从0到1使用SpringBoot操作RabbitMQ的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java操作RabbitMq并整合SpringBoot

    秋风阁-北溪入江流 RabbitMq自带有专门的管理界面,可以在其管理界面对RabbitMq进行管理查看等操作。 RabbitMq的管理界面的对外端口为 15672 ,当我们启动RabbitMq后,需要启动管理界面插件后才能访问界面。 通过参数配置连接RabbitMq 通过amqp协议连接RabbitMq queueDeclarePassive: 创建或

    2024年02月16日
    浏览(51)
  • RabbitMq整合springboot超详细,超适合新手

    1、引入springboot整合amqp的依赖 2、application.yml 配置 3、RabbitConfig.java (自定义Rabbitmq配置类) 配置详细解释都写在注解上了 4、在程序中创建交换机,队列,并且绑定 DirectRabbitConfig.java(创建direct类型的交换机) PS:一定要在该类上加@Configuration该注解,使得程序启动的时候运

    2024年02月09日
    浏览(25)
  • rabbitmq+springboot实现幂等性操作

    文章目录 1.场景描述 1.1 场景1 1.2 场景2 2.原理 3.实战开发 3.1 建表 3.2 集成mybatis-plus 3.3 集成RabbitMq 3.3.1 安装mq 3.3.2 springBoot集成mq 3.4 具体实现 3.4.1 mq配置类 3.4.2 生产者 3.4.3 消费者 消息中间件是分布式系统常用的组件,无论是异步化、解耦、削峰等都有广泛的应用价值。我们

    2024年02月10日
    浏览(31)
  • SpringBoot+RabbitMq实现数据批量接收,批量操作

    例如:在某些场景下,会在极短时间产生大量数据,这时候单条数据入库就不太适合,我们可以堆积到一定数量进行批量入库,刚好呢,RabbitMQ提供了这个堆积的过程,我们就只需要实现批量入库操作即可,因此在此记录一下。 官方文档地址 注意:SpringBoot版本必须是2.2.0以上

    2024年02月15日
    浏览(23)
  • 记录下载安装rabbitmq(Linux) 并整合springboot--详细版(全)

    erlang压缩包: https://share.weiyun.com/TGhfV8eZ rabbitMq-server压缩包: https://share.weiyun.com/ZXbUwWHD (因为RabbitMQ采用 Erlang 实现的工业级的消息队列(MQ)服务器,所以在安装rabbitMQ之前,需要先安装Erlang; 先安装Erlang ) 下载完成后吧俩文件上传到服务器 建议最好自己新建个文件夹扔进去

    2024年01月20日
    浏览(34)
  • 基于C语言的数据结构之顺序表——带你熟练掌握顺序表基本操作!!超级详细!!

    目录 前言: 1.源代码如下 2.数据结构——顺序表    2.1.顺序表的特点    2.2顺序表的分类     2.2.1.动态分配内存的顺序表     2.2.2.静态分配内存的顺序表    2.3.定义一个顺序表 3.顺序表的基本操作    3.1初始化顺序表     不用将顺序表中可能存在的原有元素初始化吗?

    2024年04月26日
    浏览(31)
  • Apifox:详细使用教程,带你轻松拿捏

    目录 Apifox简介 Apifox的安装与使用 Apifox新建项目的流程 编写接口文档 我们在日常编程开发过程中经常实行的是前后端分离架构的模式,一个项目的落地会通过产品、开发、测试三方会审,对项目需求评审过后,前后端开发会制定一些接口,他们通常会用以下方式: 开发指定

    2024年02月03日
    浏览(54)
  • Springboot中使用RabbitMq

    代码地址: https://gitee.com/Aes_yt/middleware-demo/tree/master/rabbitmq 1. docker拉取镜像 2. 创建rabbitmq容器 3. 访问地址 http://{ip地址}:15672/,可以看到RabbitMq的管理后台界面。账号密码默认 guest rabbitmq-producer 新建module,引入依赖 yaml配置地址 配置交换机 发送消息 rabbitmq-consumer 新建module,引

    2024年02月08日
    浏览(22)
  • Spring Boot进阶(69):轻松实现定时任务持久化!SpringBoot集成quartz带你玩转定时任务删除、暂停、获取等操作!【附项目源码】

            现如今,随着市场竞争加剧,各个企业都在不断寻求提高效率、降低成本的方法,此时使用自动化工具已成为必不可少的选择。而在众多的自动化工具中,定时任务已经成为一项必备工具,而Quartz就是一个非常好用的定时任务框架,它的轻量级、高可靠性、易于使

    2024年02月09日
    浏览(43)
  • 多个springboot整合使用rabbitmq(使用注解的方式)

    先参考单个springboot使用rabbitmq和了解rabbitmq的五种模式 单个springboot整合rabbitmq_java-zh的博客-CSDN博客 1、先创建两个springboot项目, 一个做生产者,一个做消费者  2、导包(生产者和消费者对应的内容都是一样) 3、编写配置文件 这里的配置文件生产者和消费者都一样 这里以rab

    2024年02月11日
    浏览(18)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包