国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

SpringBoot實現(xiàn)RabbitMQ的簡單隊列(SpringAMQP 實現(xiàn)簡單隊列)

這篇具有很好參考價值的文章主要介紹了SpringBoot實現(xiàn)RabbitMQ的簡單隊列(SpringAMQP 實現(xiàn)簡單隊列)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。



SpringBoot實現(xiàn)RabbitMQ的簡單隊列(SpringAMQP 實現(xiàn)簡單隊列),# RabbitMQ,java-rabbitmq,spring boot,rabbitmq

1. 前言

SpringAMQP 是基于 RabbitMQ 封裝的一套模板,并且還利用 SpringBoot 對其實現(xiàn)了自動裝配,使用起來非常方便。

SpringAmqp 的官方地址:https://spring.io/projects/spring-amqp

SpringBoot實現(xiàn)RabbitMQ的簡單隊列(SpringAMQP 實現(xiàn)簡單隊列),# RabbitMQ,java-rabbitmq,spring boot,rabbitmq


SpringBoot實現(xiàn)RabbitMQ的簡單隊列(SpringAMQP 實現(xiàn)簡單隊列),# RabbitMQ,java-rabbitmq,spring boot,rabbitmq


說明

1.Spring AMQP 是對 Spring 基于 AMQP 的消息收發(fā)解決方案,它是一個抽象層,不依賴于特定的 AMQP Broker 實現(xiàn)和客戶端的抽象,所以可以很方便地替換。比如我們可以使用 spring-rabbit 來實現(xiàn)。

2.spring-rabbit用于與RabbitMQ服務(wù)器交互的工具包

3.SpringAMQP提供了三個功能:

  • 自動聲明隊列、交換機(jī)及其綁定關(guān)系
  • 基于注解的監(jiān)聽器模式,異步接收消息
  • 封裝了RabbitTemplate工具,用于發(fā)送和接收消息

2. Basic Queue 簡單隊列模型

步驟如下:

1.在父工程中引入 spring-amqp 的依賴

2.在 publisher 服務(wù)中利用 RabbitTemplate 發(fā)送消息到 test2024.simple.queue 這個隊列

3.在 consumer 服務(wù)中編寫消費邏輯,綁定 test2024.simple.queue 這個隊列


2.1 父工程導(dǎo)入依賴

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

SpringBoot實現(xiàn)RabbitMQ的簡單隊列(SpringAMQP 實現(xiàn)簡單隊列),# RabbitMQ,java-rabbitmq,spring boot,rabbitmq

2.2 消息發(fā)送

2.2.1 消息發(fā)送方必要的配置

#  RabbitMQ
rabbitmq:
  host: **.105.**.**
  port: 5672
  username: ****
  password: ****
  virtual-host: /

SpringBoot實現(xiàn)RabbitMQ的簡單隊列(SpringAMQP 實現(xiàn)簡單隊列),# RabbitMQ,java-rabbitmq,spring boot,rabbitmq

2.2.2 發(fā)消息

@SpringBootTest
public class TestRabbitMQ {

    @Autowired
    private RabbitTemplate rabbitTemplate;

    @Test
    public void test01() {
        //  聲明隊列名稱
        String queueName = "test2024.simple.queue";
        String message = "";
        // 發(fā)送消息
        rabbitTemplate.convertAndSend(queueName, message);
    }
    
}

注意在執(zhí)行發(fā)送消息前要確保 隊列 先聲明到. 所以我們可以先在配置類里聲明出隊列:

@Configuration
public class RabbitMQConf {
   //  聲明一個 隊列 test2024.simple.queue
   @Bean
   public Queue testSimpleQueue() {
       return new Queue("test2024.simple.queue");
   }
}

啟動SpringBoot項目后,讓該隊列先注冊進(jìn)MQ.然后以后執(zhí)行測試代碼都不用再注冊了.

當(dāng) 該 隊列注冊進(jìn)去后,我們執(zhí)行測試發(fā)送消息代碼, 執(zhí)行成功后,看MQ頁面:
SpringBoot實現(xiàn)RabbitMQ的簡單隊列(SpringAMQP 實現(xiàn)簡單隊列),# RabbitMQ,java-rabbitmq,spring boot,rabbitmq

如此 就完成了 消息的發(fā)送.


3. 消息接收

3.1 消息接收方必要的配置

spring:
  rabbitmq:
    host: ip  # 主機(jī)名
    port: 5672 # 發(fā)送消息和接收消息的端口號
    virtual-host: / # 虛擬主機(jī)
    username: *** # 用戶名
    password: *** # 密碼

3.2 接收消息

@Component
@Component
public class SpringRabbitListener {

    //  監(jiān)聽制定隊列,Spring只要接收到該隊列的消息就會接收消息
    @RabbitListener(queues = "test2024.simple.queue")
    public void rabbitListener(String message){
        System.out.println("接收到消息:" + message);;
    }

}

啟動消息接受服務(wù). 控制臺打印收到的消息:
SpringBoot實現(xiàn)RabbitMQ的簡單隊列(SpringAMQP 實現(xiàn)簡單隊列),# RabbitMQ,java-rabbitmq,spring boot,rabbitmq

至此 . 我們用 RabbitMQ 來發(fā)送消息及接受消息就實現(xiàn)了.

MQ 頁面

SpringBoot實現(xiàn)RabbitMQ的簡單隊列(SpringAMQP 實現(xiàn)簡單隊列),# RabbitMQ,java-rabbitmq,spring boot,rabbitmq
看到消息被消費了.


SpringBoot實現(xiàn)RabbitMQ的簡單隊列(SpringAMQP 實現(xiàn)簡單隊列),# RabbitMQ,java-rabbitmq,spring boot,rabbitmq文章來源地址http://www.zghlxwxcb.cn/news/detail-849670.html


到了這里,關(guān)于SpringBoot實現(xiàn)RabbitMQ的簡單隊列(SpringAMQP 實現(xiàn)簡單隊列)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • RabbitMQ入門 消息隊列快速入門 SpringAMQP WorkQueue 隊列和交換機(jī) Fanout Direct exchange RAbbitMQ單體部署

    RabbitMQ入門 消息隊列快速入門 SpringAMQP WorkQueue 隊列和交換機(jī) Fanout Direct exchange RAbbitMQ單體部署

    微服務(wù)間通訊有同步和異步兩種方式: 同步通訊:就像打電話,需要實時響應(yīng)。 異步通訊:就像發(fā)郵件,不需要馬上回復(fù)。 兩種方式各有優(yōu)劣,打電話可以立即得到響應(yīng),但是你卻不能跟多個人同時通話。發(fā)送郵件可以同時與多個人收發(fā)郵件,但是往往響應(yīng)會有延遲。 1.

    2024年04月08日
    瀏覽(19)
  • RabbitMQ--03--SpringAMQP(SpringBoot集成RabbitMQ)

    RabbitMQ--03--SpringAMQP(SpringBoot集成RabbitMQ)

    提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔 SpringBoot 已經(jīng)提供了對 AMQP 協(xié)議完全支持的 spring-boot-starter-amqp 依賴,引入此依賴即可快速方便的在 SpringBoot 中使用 RabbitMQ。 https://spring.io/projects/spring-amqp RabbitTemplate 是 SpringBoot AMQP 提供的快速發(fā) Rabbit

    2024年03月21日
    瀏覽(21)
  • 消息隊列-RabbitMQ:延遲隊列、rabbitmq 插件方式實現(xiàn)延遲隊列、整合SpringBoot

    消息隊列-RabbitMQ:延遲隊列、rabbitmq 插件方式實現(xiàn)延遲隊列、整合SpringBoot

    1、延遲隊列概念 延時隊列內(nèi)部是有序的 , 最重要的特性 就體現(xiàn)在它的 延時屬性 上,延時隊列中的元素是希望在指定時間到了以后或之前取出和處理,簡單來說, 延時隊列就是用來存放需要在指定時間被處理的元素的隊列。 延遲隊列使用場景: 訂單在十分鐘之內(nèi)未支付則

    2024年02月22日
    瀏覽(20)
  • SpringCloud-基于SpringAMQP實現(xiàn)消息隊列

    Spring AMQP作為Spring框架的一部分,是一套用于支持高級消息隊列協(xié)議(AMQP)的工具。AMQP是一種強(qiáng)大的消息協(xié)議,旨在支持可靠的消息傳遞,特別適用于構(gòu)建分布式系統(tǒng)。Spring AMQP構(gòu)建在RabbitMQ之上,提供了在微服務(wù)架構(gòu)中進(jìn)行異步通信和消息傳遞的強(qiáng)大機(jī)制。 這個框架的設(shè)計

    2024年03月13日
    瀏覽(21)
  • Springboot集成rabbitmq——實現(xiàn)延遲隊列

    Springboot集成rabbitmq——實現(xiàn)延遲隊列

    目錄 1.rabbitmq簡介 2.延遲隊列 3.Springboot集成rabbitmq 4.以死信隊列形式實現(xiàn) 5.以插件形式實現(xiàn) ?MQ(message queue),從字面意思上看,本質(zhì)是個隊列,遵從先入先出的規(guī)則,只不過隊列中存放的內(nèi)容是 message 而已,是一種跨進(jìn)程的通信機(jī)制,用于上下游傳遞消息。RabbitMq是開發(fā)中常用

    2024年02月05日
    瀏覽(26)
  • SpringBoot RabbitMQ 實現(xiàn)消息隊列功能

    作者:禪與計算機(jī)程序設(shè)計藝術(shù) 在企業(yè)級應(yīng)用中,為了提升系統(tǒng)性能、降低響應(yīng)延遲、改善用戶體驗、增加系統(tǒng)的穩(wěn)定性、提高資源利用率等方面所需的功能之一就是使用消息隊列。RabbitMQ是一個開源的AMQP(Advanced Message Queuing Protocol)的實現(xiàn)消息隊列,它是用Erlang語言開發(fā)的。

    2024年02月09日
    瀏覽(24)
  • TP5簡單使用RabbitMQ實現(xiàn)消息隊列

    在使用 RabbitMQ 之前,你要安裝好 RabbitMQ 服務(wù),具體安裝方法可以參考 windows下安裝RabbitMQ 1、安裝擴(kuò)展 進(jìn)入TP5 更目錄下,輸入命令安裝: composer require php-amqplib/php-amqplib 2、自定義命令 TP5 的自定義命令,這里也簡單說下。 第一步: 創(chuàng)建命令類文件,新建 application/api/command

    2024年02月07日
    瀏覽(27)
  • RabbitMQ 簡單實現(xiàn)創(chuàng)建隊列的三種方式

    //1. 手動創(chuàng)建,需在RabbitMQ中手動創(chuàng)建myQueue1 隊列,否則報錯 @RabbitListener(queues = “myQueue1”) public void process1(String message){ log.info(“MqReceiver1: {}”, message); } //2. 自動創(chuàng)建隊列 @RabbitListener(queuesToDeclare = @Queue(“myQueue2”)) public void process2(String message){ log.info(“MqReceiver2: {}”, messa

    2024年02月15日
    瀏覽(21)
  • rabbitmq-常見七種消息隊列-控制臺界面管理-python-實現(xiàn)簡單訪問

    rabbitmq-常見七種消息隊列-控制臺界面管理-python-實現(xiàn)簡單訪問

    1.1.生產(chǎn)者和消費者 生產(chǎn)者(Producer) 消息的創(chuàng)建者。 負(fù)責(zé)創(chuàng)建和推送數(shù)據(jù)到消息服務(wù)器。 消費者(Consumer) 消息的接收方。 負(fù)責(zé)接收消息和處理數(shù)據(jù)。 1.2.消息隊列(Queue) 消息隊列是RabbitMQ的內(nèi)部對象,用于存儲生產(chǎn)者的消息直到發(fā)送給消費者,它是消費者接收消息的地方。 消息

    2024年02月03日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包