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

kafka--技術(shù)文檔--spring-boot集成基礎(chǔ)簡單使用

這篇具有很好參考價(jià)值的文章主要介紹了kafka--技術(shù)文檔--spring-boot集成基礎(chǔ)簡單使用。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

阿丹:

? ? ? ? 查閱了很多資料了解到,使用了spring-boot中整合的kafka的使用是被封裝好的。也就是說這些使用其實(shí)和在linux中的使用kafka代碼的使用其實(shí)沒有太大關(guān)系。但是邏輯是一樣的。這點(diǎn)要注意!

使用spring-boot整合kafka

1、導(dǎo)入依賴

核心配置為:

  <dependency>
            <groupId>org.springframework.kafka</groupId>
            <artifactId>spring-kafka</artifactId>
        </dependency>

如果在下面規(guī)定了spring-boot的版本那么就不需要再使用版本號,如果沒有的話就需要規(guī)定版本號。?

      <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <version>3.1.2</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.kafka</groupId>
            <artifactId>spring-kafka</artifactId>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.75</version>
        </dependency>
        <!--配置文件報(bào)錯問題-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
            <optional>true</optional>
        </dependency>
        <!--lombok-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.22</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>

2、寫入配置

#服務(wù)端口號
server:
  port: 8025

spring:
  main:
    allow-circular-references: true
  application:
    name: producer
  kafka:
    bootstrap-servers: kafka的ip地址:9092
    producer:
      # 發(fā)生錯誤后,消息重發(fā)的次數(shù)。
      retries: 1
      #當(dāng)有多個消息需要被發(fā)送到同一個分區(qū)時,生產(chǎn)者會把它們放在同一個批次里。該參數(shù)指定了一個批次可以使用的內(nèi)存大小,按照字節(jié)數(shù)計(jì)算。
      batch-size: 16384
      # 設(shè)置生產(chǎn)者內(nèi)存緩沖區(qū)的大小。
      buffer-memory: 33554432
      # 鍵的序列化方式
      key-serializer: org.apache.kafka.common.serialization.StringSerializer
      # 值的序列化方式
      value-serializer: org.apache.kafka.common.serialization.StringSerializer
      # acks=0 : 生產(chǎn)者在成功寫入消息之前不會等待任何來自服務(wù)器的響應(yīng)。
      # acks=1 : 只要集群的首領(lǐng)節(jié)點(diǎn)收到消息,生產(chǎn)者就會收到一個來自服務(wù)器成功響應(yīng)。
      # acks=all :只有當(dāng)所有參與復(fù)制的節(jié)點(diǎn)全部收到消息時,生產(chǎn)者才會收到一個來自服務(wù)器的成功響應(yīng)。
      acks: 1
    consumer:
      # 該屬性指定了消費(fèi)者在讀取一個沒有偏移量的分區(qū)或者偏移量無效的情況下該作何處理:
      # latest(默認(rèn)值)在偏移量無效的情況下,消費(fèi)者將從最新的記錄開始讀取數(shù)據(jù)(在消費(fèi)者啟動之后生成的記錄)
      # earliest :在偏移量無效的情況下,消費(fèi)者將從起始位置讀取分區(qū)的記錄
      auto-offset-reset: earliest
      # 是否自動提交偏移量,默認(rèn)值是true,為了避免出現(xiàn)重復(fù)數(shù)據(jù)和數(shù)據(jù)丟失,可以把它設(shè)置為false,然后手動提交偏移量
      enable-auto-commit: false
      # 鍵的反序列化方式
      key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      # 值的反序列化方式
      value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
    listener:
      # 在偵聽器容器中運(yùn)行的線程數(shù)。
      concurrency: 5
      #listner負(fù)責(zé)ack,每調(diào)用一次,就立即commit
      ack-mode: manual_immediate
      missing-topics-fatal: false

3、生產(chǎn)者

將發(fā)送封裝為一個工具類

    public void send(Object obj){
        String obj2String = JSON.toJSONString(obj);
        log.info("準(zhǔn)備發(fā)送消息為:{}",obj2String);

        //發(fā)送消息
        ListenableFuture<SendResult<String, Object>> future = kafkaTemplate.send(TOPIC_TEST, obj2String);
        //回調(diào)
        future.addCallback(new ListenableFutureCallback<SendResult<String, Object>>() {
            @Override
            public void onFailure(Throwable ex) {
                //發(fā)送失敗的處理
                log.info(TOPIC_TEST + " - 生產(chǎn)者 發(fā)送消息失敗:" + ex.getMessage());
            }

            @Override
            public void onSuccess(SendResult<String, Object> result) {
                //成功的處理
                log.info(TOPIC_TEST + " - 生產(chǎn)者 發(fā)送消息成功:" + result.toString());
            }
        });

4、消費(fèi)者

kafka--技術(shù)文檔--spring-boot集成基礎(chǔ)簡單使用,各種MQ信息消費(fèi)中間件,kafka,linq,數(shù)據(jù)庫

?如果需要使用多線程來監(jiān)聽的話使用這個策略。

@KafkaListener(topics = "Hello-Kafka", groupId = "group1")
public void onMessage1(ConsumerRecord<?, ?> record) {
    // 消息處理邏輯
}

@KafkaListener(topics = "Hello-Kafka", groupId = "group2")
public void onMessage2(ConsumerRecord<?, ?> record) {
    // 消息處理邏輯
}

以上就可以簡單實(shí)現(xiàn)一個kafka的監(jiān)聽消費(fèi)。文章來源地址http://www.zghlxwxcb.cn/news/detail-672526.html

到了這里,關(guān)于kafka--技術(shù)文檔--spring-boot集成基礎(chǔ)簡單使用的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • kafka--技術(shù)文檔-基本概念-《快速了解kafka》

    kafka--技術(shù)文檔-基本概念-《快速了解kafka》

    學(xué)習(xí)一種新的消息中間鍵,卡夫卡?。?! 官網(wǎng)網(wǎng)址 Apache Kafka ????????Kafka是一種開源的分布式流處理平臺,由Apache軟件基金會開發(fā),用Scala和Java編寫。它是一個高吞吐量的分布式發(fā)布訂閱消息系統(tǒng),可以處理消費(fèi)者在網(wǎng)站中的所有動作流數(shù)據(jù)。這種動作可以是網(wǎng)頁瀏覽、

    2024年02月11日
    瀏覽(17)
  • kafka--技術(shù)文檔--基本docker中安裝<單機(jī)>-linux

    kafka--技術(shù)文檔--基本docker中安裝<單機(jī)>-linux

    阿丹小科普: ????????Kafka在0.11.0.0版本之后不再依賴Zookeeper,而是使用基于Raft協(xié)議的Kafka自身的仲裁機(jī)制來替代Zookeeper。具體來說,Kafka 2.8.0版本是第一個不需要Zookeeper就可以運(yùn)行Kafka的版本,這被稱為Kafka Raft Metadata mode(Kafka Raft元數(shù)據(jù)模式)。引入基于Raft協(xié)議的KRaft模

    2024年02月11日
    瀏覽(22)
  • spring-boot集成mybatis真的很簡單嗎?

    spring-boot集成mybatis真的很簡單嗎?

    在日常的后端開發(fā)中,使用mybatis作為DAO層的持久框架已經(jīng)是慣例。但很多時候都是在別人搭好的框架中進(jìn)行開發(fā),對怎么搭建環(huán)境是一知半解,今天就來實(shí)踐下。 來看下集成mybatis需要哪些步驟, 1、確定環(huán)境及依賴 2、配置文件; 3、測試 這里, 基于springboot集成mybatis。 先

    2024年02月08日
    瀏覽(84)
  • spring-boot集成spring-brick實(shí)現(xiàn)動態(tài)插件

    spring-boot集成spring-brick實(shí)現(xiàn)動態(tài)插件

    spring-boot集成spring-brick實(shí)現(xiàn)動態(tài)插件 項(xiàng)目結(jié)構(gòu) 需求實(shí)現(xiàn) spring-boot集成spring-brick 環(huán)境說明 1. 主程序集成spring-brick 第一步:引入相關(guān)依賴 第二步:修改程序入口方法 第三步:編寫配置 第四步:設(shè)置maven插件 2. 準(zhǔn)備plugin-api 第一步:引入相關(guān)依賴 第二步:引入相關(guān)依賴 3. 實(shí)現(xiàn)

    2024年02月14日
    瀏覽(23)
  • websocket--技術(shù)文檔--spring后臺+vue基本使用

    websocket--技術(shù)文檔--spring后臺+vue基本使用

    ? ? ? ? 給大家分享一個可以用來進(jìn)行測試websocket的網(wǎng)頁,個人覺得還是挺好用的. WebSocket在線測試工具 還有一個小家伙 ApiPost也可以進(jìn)行使用websocket的測試。 在Spring Boot中使用WebSocket建立服務(wù)端,可以按照以下步驟進(jìn)行: 確保的Spring Boot項(xiàng)目已經(jīng)創(chuàng)建并配置好。 在項(xiàng)目的

    2024年02月09日
    瀏覽(54)
  • MongoDB文檔-進(jìn)階使用-spring-boot整合使用MongoDB---MongoRepository完成增刪改查

    阿丹: ? ? ? ? 之前學(xué)習(xí)了在MongoDB客戶端上的MongoDB語句現(xiàn)在將MongoDB整合到spring項(xiàng)目。 MongoDB文檔--基本概念_一單成的博客-CSDN博客 MongoDB文檔--基本安裝-linux安裝(mongodb環(huán)境搭建)-docker安裝(掛載數(shù)據(jù)卷)-以及詳細(xì)版本對比_一單成的博客-CSDN博客 MongoDB文檔--基本安裝-linu

    2024年02月14日
    瀏覽(26)
  • 首選Spring MVC實(shí)戰(zhàn)架構(gòu)文檔:GitHub上率先發(fā)布,引領(lǐng)技術(shù)革新

    首選Spring MVC實(shí)戰(zhàn)架構(gòu)文檔:GitHub上率先發(fā)布,引領(lǐng)技術(shù)革新

    Spring MVC是一個基于Java的Web框架,它遵循MVC設(shè)計(jì)模式,實(shí)現(xiàn)了請求驅(qū)動類型的輕量級架構(gòu)。通過將Model、View和Controller分離,Spring MVC將Web層的職責(zé)進(jìn)行了清晰的劃分,使得復(fù)雜的Web應(yīng)用程序變得結(jié)構(gòu)清晰、易于開發(fā)和維護(hù)。 其中,DispatcherServlet是Spring MVC框架的核心組件。作為

    2024年02月02日
    瀏覽(26)
  • Spring Boot集成JasperReport生成文檔

    Spring Boot集成JasperReport生成文檔

    由于工作需要,要實(shí)現(xiàn)后端根據(jù)模板動態(tài)填充數(shù)據(jù)生成PDF文檔,通過技術(shù)選型,使用Ireport5.6來設(shè)計(jì)模板,結(jié)合JasperReports5.6工具庫來調(diào)用渲染生成PDF文檔。 一、使用Ireport designer 5.6設(shè)計(jì)模板 ireport的使用由于時間關(guān)系不便多說,設(shè)計(jì)好之后,將其進(jìn)行編譯生成jasper文件,然后將

    2024年02月09日
    瀏覽(19)
  • Spring Boot集成Kafka詳解

    Spring Boot集成Kafka詳解

    Spring Boot是一個用于構(gòu)建獨(dú)立的、生產(chǎn)級的Java應(yīng)用程序的框架,而Kafka是一種高吞吐量的分布式發(fā)布訂閱消息系統(tǒng)。在本文中,我們將詳細(xì)解釋如何在Spring Boot項(xiàng)目中集成Kafka。 1. 添加依賴 首先,我們需要在項(xiàng)目的pom.xml文件中添加Spring Boot和Kafka的依賴。 2. 配置Kafka 接下來,

    2024年02月09日
    瀏覽(20)
  • Spring Boot集成kafka的相關(guān)配置

    額外依賴只需要這一個,kafka-client 不是springboot 的東西,那是原生的 kafka 客戶端, kafka-test也不需要,是用代碼控制broker的東西。 也可以用java類Config 方式配置,如果沒有特殊要求,可以只用spring配置的方式 注意加上@Component,被spring管理監(jiān)聽才有效 注意這里不能用@Value注解

    2024年02月07日
    瀏覽(26)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包