麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > Java > 正文

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

2024-07-14 08:42:45
字體:
來源:轉載
供稿:網友

第1步:生成我們的項目: Spring Initializr 來生成我們的項目。我們的項目將提供Spring MVC / Web支持和Apache Kafka支持。

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

<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讓我們避免像過去一樣編寫的所有樣板代碼,同時為我們提供了更加智能的配置應用程序的方法,如下所示:

server: port: 9000spring:  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.StringDeserializerproducer:    bootstrap: localhost:9092    key-serializer: org.apache.kafka.common.serialization.StringSerializer    value-serializer: org.apache.kafka.common.serialization.StringSerializer

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

<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>

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

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

@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消息所需的全部內容。

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

@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的方法步驟詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VeVb武林網網站的支持!


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 91成人一区 | 免费看性xxx高清视频自由 | 羞羞视频免费网站男男 | 色综合狠狠 | 91久久夜色精品国产网站 | 毛片久久 | 免费一级特黄做受大片 | 国产精品一区二区x88av | 中文字幕国 | 国产午夜精品久久久久 | 男女隐私免费视频 | 中文字幕在线播放第一页 | 国产精品午夜未成人免费观看 | 黄色av网站在线观看 | 免费毛片在线 | 日韩黄站 | 日韩在线播放第一页 | 日本s级毛片免费观看 | 国产精品久久久久一区二区 | 男女羞羞视频在线观看免费 | 国产成年人视频 | 免费在线观看成人av | 欧美日本不卡 | 中文字幕免费在线观看视频 | 最新黄色av | 久久免费视频精品 | xp123精品视频 | 久久精品一二三区 | 狠狠一区二区 | 91精品久久久久久久久 | 黄色网欧美 | www.国产一区.com | 国产成人精品二区 | 欧美成人小视频 | 亚洲第一成人久久网站 | 免费试看av| 一级性色 | 国产亚洲精品久久久久久久久久 | 欧美精品免费一区二区三区 | 亚洲第一页夜 | 欧美顶级毛片在线播放小说 |