her*_*-zh 1 spring-cloud-stream spring-cloud-stream-binder-kafka
看了spring cloud stream 3.0的文档,理解了新的用java.util.function.[Supplier/Function/Consumer]来代表生产者、消费和生产、消费者,这个应该是正确的。
但我不了解供应商。
该文档指出,对供应商的轮询用于一致地为供应商生成数据,并且不需要任何程序参与。
但是很多时候,我们需要在特定时间生成数据,例如 Web 请求,而我找不到任何文档或示例。
它可能就像注入 Supplier 对象并调用 get() 方法一样简单,但是如何禁用轮询调用呢?
感谢所有提供信息的人。
我们将更新我们将在几周内发布的 SR1 文档,但这里是完整的代码,演示如何完成您所描述的内容。我们依赖项目反应堆中的 EmitterProcessor:
@SpringBootApplication
@Controller
public class WebSourceApplication {
public static void main(String[] args) {
SpringApplication.run(WebSourceApplication.class);
}
EmitterProcessor<String> processor = EmitterProcessor.create();
@RequestMapping
@ResponseStatus(HttpStatus.ACCEPTED)
public void delegateToSupplier(@RequestBody String body) {
System.out.println("Sending " + body);
processor.onNext(body);
}
@Bean
public Supplier<Flux<String>> supplier() {
return () -> processor;
}
}
Run Code Online (Sandbox Code Playgroud)
进而 and then curl -H "Content-Type: text/plain" localhost:8080/ -d Hello
| 归档时间: |
|
| 查看次数: |
1415 次 |
| 最近记录: |