怎么用springboot+rocketMQ實(shí)現(xiàn)簡(jiǎn)單的消息發(fā)送與接收

這篇文章主要介紹“怎么用spring boot+rocketMQ實(shí)現(xiàn)簡(jiǎn)單的消息發(fā)送與接收”,在日常操作中,相信很多人在怎么用spring boot+rocketMQ實(shí)現(xiàn)簡(jiǎn)單的消息發(fā)送與接收問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”怎么用spring boot+rocketMQ實(shí)現(xiàn)簡(jiǎn)單的消息發(fā)送與接收”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!

10年積累的網(wǎng)站制作、成都做網(wǎng)站經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有豐順免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

1. 環(huán)境搭建

我們要使用rocketMQ,因此需要使用rocketMQ服務(wù)。        安裝教程

以上并沒有介紹windows下怎么運(yùn)行,所以講一下windows的安裝方法。

按照安裝教程下載二進(jìn)制文件,然后解壓到任意目錄下:

怎么用spring boot+rocketMQ實(shí)現(xiàn)簡(jiǎn)單的消息發(fā)送與接收

· 配置環(huán)境變量:

ROCKETMQ_HOME
E:\rocketMQ\rocketmq-all-4.4.0-bin-release    // 文件解壓的路徑

怎么用spring boot+rocketMQ實(shí)現(xiàn)簡(jiǎn)單的消息發(fā)送與接收

怎么用spring boot+rocketMQ實(shí)現(xiàn)簡(jiǎn)單的消息發(fā)送與接收

完成配置后最好重啟下計(jì)算機(jī)?。。。。。。?!不重啟可能存在找不到環(huán)境變量的錯(cuò)誤。

· 啟動(dòng)服務(wù):

在你安裝目錄的bin文件夾下打開命令窗口。

首先啟動(dòng) namesrv

start mqnamesrv.cmd

怎么用spring boot+rocketMQ實(shí)現(xiàn)簡(jiǎn)單的消息發(fā)送與接收

請(qǐng)勿關(guān)閉此命令框

啟動(dòng)broker

start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true

怎么用spring boot+rocketMQ實(shí)現(xiàn)簡(jiǎn)單的消息發(fā)送與接收

請(qǐng)勿關(guān)閉此命令框

假如彈出提示框提示‘錯(cuò)誤: 找不到或無法加載主類 xxxxxx’。打開runbroker.cmd,然后將‘%CLASSPATH%’加上英文雙引號(hào)。保存并重新執(zhí)行start語句。

怎么用spring boot+rocketMQ實(shí)現(xiàn)簡(jiǎn)單的消息發(fā)送與接收

如果出現(xiàn)內(nèi)存不夠的錯(cuò)誤,請(qǐng)確保機(jī)器有足夠的運(yùn)行內(nèi)存,然后重新啟動(dòng)。

RocketMQ插件部署,這里沒研究過,直接參照別人的吧。

========================================================================================

開始正事,官方地址。

以下spring boot的版本都是2.1.4.RELEASE

· 搭建生產(chǎn)者(producer),也就是消息發(fā)送者

加入pom

<dependency>
   <groupId>org.apache.rocketmq</groupId>
   <artifactId>rocketmq-spring-boot-starter</artifactId>
   <version>2.0.3</version>
</dependency>
## application.properties
rocketmq.name-server=127.0.0.1:9876
rocketmq.producer.group=my-group

新建一個(gè)controller來做消息發(fā)送:

@RestController
public class SendMessageApi {
    
    @Resource
    private RocketMQTemplate rocketMQTemplate;
    
    @GetMapping(value = "/send/{message}")
    public String echo(@PathVariable String message) {
        // // 往主題test-topic-1直接發(fā)送Hello, World!
        // rocketMQTemplate.convertAndSend("test-topic-1", "Hello, World!");

        // 往主題test-topic-1發(fā)送message
        rocketMQTemplate.send("test-topic-1", MessageBuilder.withPayload(message).build());

        // // 往主題test-topic-2發(fā)送對(duì)象,這里對(duì)象是自己自定義的dto,需要序列化
        // MessageDto messageDto = new MessageDto();
        // messageDto.setXXX("");
        // ...
        // rocketMQTemplate.convertAndSend("test-topic-2", messageDto);
        System.out.println("消息發(fā)送成功.........");
        return message;
    }
    
}

· 搭建消費(fèi)者(consumer),也就是消息接收者

加入pom

<dependency>
   <groupId>org.apache.rocketmq</groupId>
   <artifactId>rocketmq-spring-boot-starter</artifactId>
   <version>2.0.3</version>
</dependency>
## application.properties
rocketmq.name-server=127.0.0.1:9876
    // 接收string類型消息
    @Service
    @RocketMQMessageListener(topic = "test-topic-1", consumerGroup = "my-consumer_test-topic-1")
    public class MyConsumer1 implements RocketMQListener<String>{
        public void onMessage(String message) {
            System.out.println("received message: " + message);
        }
    }
    // 接收對(duì)象類型的消息
    @Service
    @RocketMQMessageListener(topic = "test-topic-2", consumerGroup = "my-consumer_test-topic-2")
    public class MyConsumer2 implements RocketMQListener<MessageDto>{
        public void onMessage(MessageDto messageDto) {
            System.out.println("received messageDto: " + messageDto.toString());
        }
    }

簡(jiǎn)單的消息發(fā)送與接收搭建完畢。

到此,關(guān)于“怎么用spring boot+rocketMQ實(shí)現(xiàn)簡(jiǎn)單的消息發(fā)送與接收”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

本文題目:怎么用springboot+rocketMQ實(shí)現(xiàn)簡(jiǎn)單的消息發(fā)送與接收
分享路徑:http://muchs.cn/article14/pgoede.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)響應(yīng)式網(wǎng)站、自適應(yīng)網(wǎng)站小程序開發(fā)、手機(jī)網(wǎng)站建設(shè)品牌網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)