spring-kafka - 如何在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 服务端点时才调用此侦听器部分
解决方案
你的听众应该扩展AbstractConsumerSeekAware
;然后您可以执行任意查找操作。见https://docs.spring.io/spring-kafka/docs/2.6.2/reference/html/#seek
推荐阅读
- r - 关于ggh4x和faceting:不同区域标签的位置和颜色变化
- firefox - 如何配置 apache 以使用 websocket
- hadoop - Apache Kylin Web UI 未启动
- algorithm - “IP Hash”算法和负载均衡算法中的“Source”算法一样吗?
- python-3.x - 蟒蛇 3.9。- 原始错误是:没有名为“numpy.core._multiarray_umath”的模块
- serialization - H2gis 数据库在插入 JSONB 列时出现异常
- bash - 为什么双引号未在命令替换输出中分组
- snowflake-cloud-data-platform - 雪花。如何更改仪表板中所有磁贴中所有查询的架构?
- ruby-on-rails - PgSQL 响应时间太长
- asp.net-core - HTTPS 证书 Blazor 服务器端 - 发布到用作 Windows 服务的文件夹