首页 > 解决方案 > 如何在spring boot webservice中的API调用后从启动开始寻求kafka记录

问题描述

我有一个 spring-boot Kafka 项目,它是一个 Web 服务公开 API 以获取 Kafka 消息作为响应。我想要的是,每当我调用其余端点时,Kafka 应该从头开始搜索,它会像我在自动重置配置中最早使用的那样执行它,但我必须一次又一次地启动服务器以使其从启动开始监听 Kafka。

@KafkaListener(topics = {"topic"})
public void storeMessagesMessages(ConsumerRecord record) {

    if (record.value().toString().contains(uuid) {
        this.messageToBeReturnedByApi = record.value()
    }
}

或者我可以说我希望仅当我调用 Web 服务端点时才调用此侦听器部分

标签: spring-kafka

解决方案


你的听众应该扩展AbstractConsumerSeekAware;然后您可以执行任意查找操作。见https://docs.spring.io/spring-kafka/docs/2.6.2/reference/html/#seek


推荐阅读