簡體   English   中英

在 Spring Boot 應用程序中實現 Reactive Kafka Listener

[英]Implement Reactive Kafka Listener in Spring Boot application

我正在嘗試在我的 Spring 啟動應用程序中實現反應式 kafka 消費者,我正在查看這些示例: https://github.com/reactor/reactor-kafka/blob/master/reactor-kafka-samples/src/main /java/reactor/kafka/samples/SampleScenarios.java

看起來反應式卡夫卡還不支持 Spring

我了解 kafka 偵聽器如何在 Spring 中的非反應性 kafka API 中工作:最簡單的解決方案是為 ConcurrentKafkaListenerContainerFactory 和 ConsumerFactory 配置 bean,然后使用 @KafkaListener 注釋和瞧

但我不確定現在如何在 Spring 中正確使用反應式 kafka。

基本上我需要一個話題的聽眾。 我應該自己創建某種循環或調度程序嗎? 或者也許我錯過了什么。 任何人都可以分享他們的知識和最佳實踐嗎?

我還沒有現成的解決方案,但我正在嘗試這個(Kotlin 代碼,Spring Boot)。 有人在這里發布了這段代碼片段的一部分https://github.com/reactor/reactor-kafka/issues/100

@EventListener(ApplicationStartedEvent::class)
fun onSomeEvent() {
    kafkaReceiver
        .receive()
        .doOnNext { record ->
            val myEvent = record.value()
            processMyEvent(myEvent).thenEmpty {
                record.receiverOffset().acknowledge()
            }
        }
        .doOnError {
            /* todo */
        }
        .subscribe()
}

查看其他堆棧溢出問題。 那里沒有太多,但也許會給你一些想法

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM