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

springboot如何開(kāi)啟和關(guān)閉kafka消費(fèi)

 更新時(shí)間:2024年12月16日 09:44:17   作者:阿拉的夢(mèng)想  
在Kafka消費(fèi)者中,通過(guò)關(guān)閉自動(dòng)消費(fèi)配置,使用自定義容器工廠,并在消費(fèi)監(jiān)聽(tīng)器上設(shè)置id,可以手動(dòng)控制消費(fèi)的開(kāi)啟和關(guān)閉,這是根據(jù)個(gè)人經(jīng)驗(yàn)總結(jié)的方法,旨在幫助其他開(kāi)發(fā)者

springboot開(kāi)啟和關(guān)閉kafka消費(fèi)

關(guān)閉kafka自動(dòng)消費(fèi)

配置自定義容器工廠

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.kafka.config.ConcurrentKafkaListenerContainerFactory;
import org.springframework.kafka.core.ConsumerFactory;
import org.springframework.stereotype.Component;

@Component
@Configuration
public class kafkaConfig {

    @Autowired
    private ConsumerFactory<String, String> consumerFactory;

    @Bean("pingKafkaFactory")
    public ConcurrentKafkaListenerContainerFactory<String, String> delayContainerFactory() {
        ConcurrentKafkaListenerContainerFactory<String, String> container = new ConcurrentKafkaListenerContainerFactory<String, String>();
        container.setConsumerFactory(consumerFactory);
        //禁止自動(dòng)啟動(dòng)
        container.setAutoStartup(false);
        return container;
    }
}

在消費(fèi)監(jiān)聽(tīng)器上使用工廠,并設(shè)置id

@KafkaListener(topics = "#{pingProperties.getTopic().split(',')}",id = "pingConsumer",containerFactory = "pingKafkaFactory")

這樣,啟動(dòng)項(xiàng)目后,就不會(huì)自動(dòng)消費(fèi)了。

手動(dòng)開(kāi)啟和關(guān)閉消費(fèi)

import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.kafka.config.KafkaListenerEndpointRegistry;
import org.springframework.stereotype.Service;

/**
 * Kafka消費(fèi)監(jiān)聽(tīng)服務(wù)實(shí)現(xiàn)類.
 */
@Service
@Slf4j
public class KafkaConsumerListenerServiceImpl implements KafkaConsumerListenerService {


    /**
     * registry.
     */
    @Autowired
    private KafkaListenerEndpointRegistry registry;

    /**
     * 開(kāi)啟監(jiān)聽(tīng).
     *
     * @param listenerId 監(jiān)聽(tīng)I(yíng)D
     */
    @Override
    public void startListener(String listenerId) {
        //判斷監(jiān)聽(tīng)容器是否啟動(dòng),未啟動(dòng)則將其啟動(dòng)
        if (!registry.getListenerContainer(listenerId).isRunning()) {
            registry.getListenerContainer(listenerId).start();
        }
        //項(xiàng)目啟動(dòng)的時(shí)候監(jiān)聽(tīng)容器是未啟動(dòng)狀態(tài),而resume是恢復(fù)的意思不是啟動(dòng)的意思
        //registry.getListenerContainer(listenerId).stop();
        log.info(listenerId + "開(kāi)啟監(jiān)聽(tīng)成功。");
    }

    /**
     * 停止監(jiān)聽(tīng).
     *
     * @param listenerId 監(jiān)聽(tīng)I(yíng)D
     */
    @Override
    public void stopListener(String listenerId) {
        registry.getListenerContainer(listenerId).stop();
        log.info(listenerId + "停止監(jiān)聽(tīng)成功。");
    }

}

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java集成swagger文檔組件

    Java集成swagger文檔組件

    這篇文章主要介紹了Java集成swagger文檔組件,通過(guò)詳細(xì)的圖文介紹和代碼分析展示,從頭展開(kāi)說(shuō)明詳細(xì)的過(guò)程,希望對(duì)你的開(kāi)發(fā)有所幫助
    2021-06-06
  • Spring使用Configuration注解管理bean的方式詳解

    Spring使用Configuration注解管理bean的方式詳解

    在Spring的世界里,Configuration注解就像是一位細(xì)心的園丁,它的主要職責(zé)是在這個(gè)繁花似錦的園子里,幫助我們聲明和管理各種各樣的bean,本文給大家介紹了在Spring中如何優(yōu)雅地管理你的bean,需要的朋友可以參考下
    2024-05-05
  • 淺談cookie和session(小結(jié))

    淺談cookie和session(小結(jié))

    這篇文章主要介紹了淺談cookie和session(小結(jié)),cookie和session在java web開(kāi)發(fā)中扮演了十分重要的作用,本篇文章對(duì)其中的重要知識(shí)點(diǎn)做一些探究和總結(jié)
    2018-11-11
  • 圖書(shū)管理系統(tǒng)java代碼實(shí)現(xiàn)

    圖書(shū)管理系統(tǒng)java代碼實(shí)現(xiàn)

    這篇文章主要為大家詳細(xì)介紹了java代碼實(shí)現(xiàn)的圖書(shū)管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • SpringBoot實(shí)現(xiàn)動(dòng)態(tài)多線程并發(fā)定時(shí)任務(wù)

    SpringBoot實(shí)現(xiàn)動(dòng)態(tài)多線程并發(fā)定時(shí)任務(wù)

    這篇文章主要為大家詳細(xì)介紹了SpringBoot實(shí)現(xiàn)動(dòng)態(tài)多線程并發(fā)定時(shí)任務(wù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • mybatis條件構(gòu)造器(EntityWrapper)的使用方式

    mybatis條件構(gòu)造器(EntityWrapper)的使用方式

    這篇文章主要介紹了mybatis條件構(gòu)造器(EntityWrapper)的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • 一個(gè)簡(jiǎn)單的類加載器URLClassLoader案例

    一個(gè)簡(jiǎn)單的類加載器URLClassLoader案例

    這篇文章主要介紹了一個(gè)簡(jiǎn)單的類加載器URLClassLoader案例,這里寫(xiě)了一個(gè)小 demo,來(lái)加深對(duì)于反射的理解,需要的朋友可以參考下
    2023-04-04
  • 關(guān)于webLucene 安裝方法

    關(guān)于webLucene 安裝方法

    webLucene是一個(gè)基于開(kāi)源項(xiàng)目lucene實(shí)現(xiàn)站內(nèi)搜索的工具,關(guān)于它的安裝,百度得到的大多是一樣的,按照步驟也能正確安裝并運(yùn)行,需要注意的問(wèn)題是
    2009-06-06
  • Spring Boot 控制層之參數(shù)傳遞方法詳解

    Spring Boot 控制層之參數(shù)傳遞方法詳解

    這篇文章主要介紹了Spring Boot 控制層之參數(shù)傳遞方法詳解,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • SpringBoot設(shè)置靜態(tài)資源訪問(wèn)控制和封裝集成方案

    SpringBoot設(shè)置靜態(tài)資源訪問(wèn)控制和封裝集成方案

    這篇文章主要介紹了SpringBoot靜態(tài)資源訪問(wèn)控制和封裝集成方案,關(guān)于springboot靜態(tài)資源訪問(wèn)的問(wèn)題,小編是通過(guò)自定義webconfig實(shí)現(xiàn)WebMvcConfigurer,重寫(xiě)addResourceHandlers方法,具體完整代碼跟隨小編一起看看吧
    2021-08-08

最新評(píng)論

从化市| 罗甸县| 商水县| 镇坪县| 江孜县| 九龙城区| 东莞市| 怀仁县| 都昌县| 宜兰市| 大英县| 北流市| 赫章县| 莱芜市| 江山市| 原阳县| 蕲春县| 连江县| 东乡族自治县| 元阳县| 泽普县| 泉州市| 西城区| 共和县| 宿州市| 大同市| 吉木乃县| 修文县| 温州市| 成安县| 博兴县| 上高县| 遵化市| 宣城市| 九寨沟县| 南靖县| 宾阳县| 保定市| 东兴市| 西吉县| 启东市|