spring-boot - 使用 Spring-Kafka 等待消息的 API
问题描述
我正在使用 Spring Boot 2.0.7 和 Spring-Kafka 来创建请求/回复模式。基本上,前端 UI 向 API 发出请求,该 API 将消息放入请求 Kafka 队列,消息由后端进程处理,完成后将消息放入回复队列。
我想为前端 UI 提供一个等待响应准备好的 api。此时的 UI 将只显示一条处理消息。如果响应不可用(例如 2 分钟后),API 应该只返回消息不可用错误,我们可以指示用户稍后返回。
我对 Spring-Kafka 有点陌生。它是否允许我创建轮询 API?如果是这样,任何示例代码将不胜感激。
解决方案
它不像轮询主题以获取回复那么简单,因为您必须关联请求/回复。
您可以使用并ReplyingKafkaTemplate.sendAndReceive()
继续检查isDone()
.Future<?>
如果您想自己进行轮询,则必须从消费者工厂创建一个消费者对象。
推荐阅读
- flyway - 有没有机会在 Flyway 社区版中添加对 z/OS 上 DB2 的数据库支持
- javascript - 如何在 code.org gamelab 中将画布尺寸从 400*400 增加到 1080*1920?
- angular - 确认弹出后角度滑动切换没有响应
- c# - 如何从控制器返回通用响应?
- laravel-livewire - simplepaginate livewire 的问题或错误
- java - OnClickListener 中的 Android Studio onClickListener 尝试在空对象引用上调用虚拟方法
- python - Matplotlib:在 x 轴和 y 轴上将条形图与 imgshow 对齐一次
- node.js - 由于 NPM 警告,AWS Elastic Beanstalk 部署失败
- ruby - 将 TailwindCSS 与 BridgetownRB 一起使用
- sharepoint - 无法在 PowerApps 中添加 PCF 组件