一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - 在Spring Boot應用程序中使用Apache Kafka的方法步驟詳解

在Spring Boot應用程序中使用Apache Kafka的方法步驟詳解

2021-06-10 14:09banq Java教程

這篇文章主要介紹了在Spring Boot應用程序中使用Apache Kafka的方法步驟詳解,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下

第1步:生成我們的項目: spring initializr 來生成我們的項目。我們的項目將提供spring mvc / web支持和apache kafka支持。

第2步:發布/讀取kafka主題中的消息:

?
1
2
3
4
5
6
7
8
<b>public</b> <b>class</b> user {
  <b>private</b> string name;
  <b>private</b> <b>int</b> age;
  <b>public</b> user(string name, <b>int</b> age) {
    <b>this</b>.name = name;
    <b>this</b>.age = age;
  }
}

第3步:通過application.yml配置文件配置kafka:

我們需要創建配置文件。我們需要以某種方式配置我們的kafka生產者和消費者,以便能夠發布和讀取與主題相關的消息。相比建立一個使用@configuration標注的java類,我們可以直接使用配置文件application.properties或application.yml。spring boot讓我們避免像過去一樣編寫的所有樣板代碼,同時為我們提供了更加智能的配置應用程序的方法,如下所示:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
server: port: 9000
spring:
  kafka:
   consumer:
    bootstrap: localhost:9092
    group-id: group_id
    auto-offset-reset: earliest
    key-deserializer: org.apache.kafka.common.serialization.stringdeserializer
    value-deserializer: org.apache.kafka.common.serialization.stringdeserializer
producer:
    bootstrap: localhost:9092
    key-serializer: org.apache.kafka.common.serialization.stringserializer
    value-serializer: org.apache.kafka.common.serialization.stringserializer

第4步:創建一個生產者,創建生產者會將我們的消息寫入該主題。

?
1
2
3
4
5
6
7
8
9
10
11
<b>public</b> <b>class</b> producer {
  <b>private</b> <b>static</b> <b>final</b> logger logger = loggerfactory.getlogger(producer.<b>class</b>);
  <b>private</b> <b>static</b> <b>final</b> string topic = <font>"users"</font><font>;
  @autowired
  <b>private</b> kafkatemplate<string, string> kafkatemplate;
  <b>public</b> <b>void</b> sendmessage(string message) {
    logger.info(string.format(</font><font>"#### -> producing message -> %s"</font><font>, message));
    <b>this</b>.kafkatemplate.send(topic, message);
  }
}
</font>

自動連接autowirekafkatemplate ,使用它將消息發布到主題 - 這就是消息的生產者!

第5步:創建一個消費者,消費者是負責根據您自己的業務邏輯的需求閱讀處理消息的消息的服務。要進行設置,請輸入以下內容:

?
1
2
3
4
5
6
7
8
9
10
11
@service
<b>public</b> <b>class</b> consumer {
 
  <b>private</b> <b>final</b> logger logger = loggerfactory.getlogger(producer.<b>class</b>);
 
  @kafkalistener(topics = <font>"users"</font><font>, groupid = </font><font>"group_id"</font><font>)
  <b>public</b> <b>void</b> consume(string message) throws ioexception {
    logger.info(string.format(</font><font>"#### -> consumed message -> %s"</font><font>, message));
  }
}
</font>

在這里,我們告訴我們的方法void consume(string message)訂閱用戶的主題,并將每條消息發送到應用程序日志。在您的實際應用程序中,您可以按照業務需要的方式處理消息。

第6步:創建rest控制器,們已經擁有了能夠消費kafka消息所需的全部內容。

為了充分展示我們創建的所有內容的工作原理,我們需要創建一個具有單一端點的控制器。消息將發布到此端點,然后由我們的生產者處理。然后,我們的消費者將通過登錄到控制臺來捕獲并處理它。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
@restcontroller
@requestmapping(value = <font>"/kafka"</font><font>)
<b>public</b> <b>class</b> kafkacontroller {
 
  <b>private</b> <b>final</b> producer producer;
 
  @autowired
  kafkacontroller(producer producer) {
    <b>this</b>.producer = producer;
  }
 
  @postmapping(value = </font><font>"/publish"</font><font>)
  <b>public</b> <b>void</b> sendmessagetokafkatopic(@requestparam(</font><font>"message"</font><font>) string message) {
    <b>this</b>.producer.sendmessage(message);
  }
}
</font>

讓我們使用curl將消息發送給kafka:

curl -x post -f 'message=test'  http://localhost:9000/kafka/publish

基本上就是這樣!在不到10個步驟中,您了解了將apache kafka添加到spring boot項目是多么容易。如果您遵循本指南,您現在知道如何將kafka集成到spring boot項目中,并且您已準備好使用這個超級工具!

總結

以上所述是小編給大家介紹的在spring boot應用程序中使用apache kafka的方法步驟詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!

原文鏈接:https://www.jdon.com/50613

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产自在线拍 | 羞羞答答影院在线 | 农夫69小说恋老妇小说 | 吃瓜视频在线观看 | 毛片在线网址 | a毛片免费全部在线播放毛 a级在线看 | 性一交一无一伦一精一品 | 欧美日韩中文国产一区二区三区 | 国内精品久久久久久久久久久久 | 果冻传媒在线播放观看w | 亚洲 欧美 清纯 校园 另类 | 日韩欧美成末人一区二区三区 | 交欧美 | 日本人成年视频在线观看 | 欧美黄站 | porono日本人xxx | 国产欧美精品专区一区二区 | 国产一级一级片 | 无限好资源第一片免费韩国 | 2020年精品国产午夜福利在线 | 免费一区在线观看 | 亚洲成人黄色网址 | 午夜宅男在线观看 | 国产动作大片 | 视频大全在线观看免费 | 黄瓜视频黄版 | 免费在线观看网址入口 | 青山葵在线| 免费观看欧美一级高清 | 娇妻被朋友征服中文字幕 | 精品欧美日韩一区二区三区 | 亚洲不卡视频在线 | 亚洲午夜精品久久久久 | 欧美a级v片不卡在线观看 | 全肉np巨肉一女np高h双龙 | 日本网络视频www色高清免费 | 久久综合狠狠综合久久综合88 | 国产成人手机在线好好热 | 俄罗斯三级完整版在线观看 | 我与旗袍老师疯狂床震 | 天天舔天天操天天干 |