最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解決spring-integration-mqtt頻繁報Lost connection錯誤問題

 更新時間:2023年03月11日 11:00:22   作者:VictorBu  
這篇文章主要介紹了解決spring-integration-mqtt頻繁報Lost connection錯誤問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

問題描述

在之前的博客介紹了如何在 Spring Boot 集成 MQTT,后面使用中沒有發(fā)現問題,最近發(fā)現一直報錯:

Lost connection: Connection lost; retrying...
Lost connection: 已斷開連接; retrying...

解決過程

網上說是因為 client ID 重復,最開始是不相信的,因為我測試只啟動了一個客戶端。但是卻怎么都定位不到異常原因,用重新回到 client ID 重復的這個思路上來:

因為程序里同時作為訂閱者和發(fā)布者,就懷疑訂閱和發(fā)布服務是不是單獨建立的連接,抱著試試看的想法試了一下,結果果然是這個原因

原代碼:

    /* 發(fā)布者 */
    @Bean
    @ServiceActivator(inputChannel = OUTBOUND_CHANNEL)
    public MessageHandler getMqttProducer() {
        MqttPahoMessageHandler messageHandler = new MqttPahoMessageHandler(clientId, getMqttClientFactory());
        messageHandler.setAsync(true);
        messageHandler.setDefaultTopic(defaultTopic);
        messageHandler.setDefaultRetained(defaultRetained);
        messageHandler.setDefaultQos(defaultProducerQos);

        return messageHandler;
    }

    /* 訂閱者 */
    @Bean
    public MessageProducer getMqttConsumer() {
        MqttPahoMessageDrivenChannelAdapter adapter =
                new MqttPahoMessageDrivenChannelAdapter(clientId, getMqttClientFactory(), consumerTopics);
        adapter.setCompletionTimeout(completionTimeout);
        adapter.setConverter(new DefaultPahoMessageConverter());
        adapter.setQos(defaultConsumerQos);
        adapter.setOutputChannel(inboundChannel());

        return adapter;
    }

訂閱者和發(fā)布者使用的是相同的 client ID,修改后代碼:

    /* 發(fā)布者 */
    @Bean
    @ServiceActivator(inputChannel = OUTBOUND_CHANNEL)
    public MessageHandler getMqttProducer() {
        MqttPahoMessageHandler messageHandler = new MqttPahoMessageHandler(clientId + "_producer", getMqttClientFactory());
        messageHandler.setAsync(true);
        messageHandler.setDefaultTopic(defaultTopic);
        messageHandler.setDefaultRetained(defaultRetained);
        messageHandler.setDefaultQos(defaultProducerQos);

        return messageHandler;
    }

    /* 訂閱者 */
    @Bean
    public MessageProducer getMqttConsumer() {
        MqttPahoMessageDrivenChannelAdapter adapter =
                new MqttPahoMessageDrivenChannelAdapter(clientId + "_consumer", getMqttClientFactory(), consumerTopics);
        adapter.setCompletionTimeout(completionTimeout);
        adapter.setConverter(new DefaultPahoMessageConverter());
        adapter.setQos(defaultConsumerQos);
        adapter.setOutputChannel(inboundChannel());

        return adapter;
    }

總結

雖然目前解決了這個問題,但是為什么會單獨建立兩個連接的原因還未找到;另外,一個程序兩個連接還是感覺怪怪的,不知道還有沒有更優(yōu)的處理方案。

希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • 通過spring注解開發(fā),簡單測試單例和多例區(qū)別

    通過spring注解開發(fā),簡單測試單例和多例區(qū)別

    這篇文章主要介紹了通過spring注解開發(fā),簡單測試單例和多例區(qū)別,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • Spring Cloud 整合Apache-SkyWalking實現鏈路跟蹤的方法

    Spring Cloud 整合Apache-SkyWalking實現鏈路跟蹤的方法

    這篇文章主要介紹了Spring Cloud 整合Apache-SkyWalking鏈路跟蹤的示例代碼,代碼簡單易懂,通過圖文相結合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • Spring?Security?OAuth?Client配置加載源碼解析

    Spring?Security?OAuth?Client配置加載源碼解析

    這篇文章主要為大家介紹了Spring?Security?OAuth?Client配置加載源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • 一文搞懂JAVA 修飾符

    一文搞懂JAVA 修飾符

    這篇文章主要介紹了JAVA 修飾符的的相關資料,文中代碼非常詳細,幫助大家更好的理解和學習,感興趣的朋友可以了解下
    2020-06-06
  • Java動態(tài)代理簡單介紹

    Java動態(tài)代理簡單介紹

    動態(tài)代理指的是,代理類和目標類的關系在程序運行的時候確定的,客戶通過代理類來調用目標對象的方法,是在程序運行時根據需要動態(tài)的創(chuàng)建目標類的代理對象。本文將通過案例詳細講解一下Java動態(tài)代理的原理及實現,需要的可以參考一下
    2022-08-08
  • Java實現文件切割拼接的實現代碼

    Java實現文件切割拼接的實現代碼

    這篇文章主要介紹了Java實現文件切割拼接的實現代碼,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11
  • 解釋為什么Java中“1000==1000”為false而”100==100“為true

    解釋為什么Java中“1000==1000”為false而”100==100“為true

    在日常編程中,我們經常遇到一些看似簡單卻隱藏著復雜邏輯的問題,這篇文章主要介紹了解釋為什么Java中“1000==1000”為false而”100==100“為true,需要的朋友可以參考下
    2024-01-01
  • nacos2.0.3版本安裝和配置步驟

    nacos2.0.3版本安裝和配置步驟

    本文講述了如何安裝Nacos 2.0.3版本,包括下載、解壓、配置和啟動服務的步驟,結合圖文給大家講解的非常詳細,感興趣的朋友一起看看吧
    2024-12-12
  • 解決mybatis中的mapper命名問題

    解決mybatis中的mapper命名問題

    這篇文章主要介紹了解決mybatis中的mapper命名問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • idea導入項目不顯示maven側邊欄的問題及解決方法

    idea導入項目不顯示maven側邊欄的問題及解決方法

    這篇文章主要介紹了idea導入項目不顯示maven側邊欄的問題及解決方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07

最新評論

武胜县| 四川省| 延庆县| 南江县| 寿光市| 太谷县| 蒙山县| 海门市| 合水县| 新余市| 称多县| 建宁县| 宁陵县| 定结县| 阜新市| 灵宝市| 花莲县| 蕲春县| 泽库县| 本溪| 德保县| 延庆县| 灵寿县| 衡东县| 黄大仙区| 万载县| 通山县| 顺昌县| 内乡县| 五河县| 泾源县| 疏附县| 弋阳县| 抚宁县| 清原| 什邡市| 琼海市| 西平县| 巨鹿县| 沐川县| 海淀区|