jzq*_*zqa 6 spring reactive-programming spring-webflux
这是反应式处理的正确方法吗?我看到 2 个线程一个反应式 nio,直到并包括flatMap(fareRepo::save). 另一个线程是计算线程,它从发送消息开始一直持续到 ServerResponse.build()。我的问题是这种响应式处理请求的正确方法吗?注意:fareRepo 是反应式 couchbase 存储库。谢谢
return request.bodyToMono(Fare.class).flatMap(fareRepo::save).flatMap(fs -> {
logger.info("sending message: {}, to queue", fs.getId());
jmsTemplate.send("fare-request-queue", (session) -> session.createTextMessage(fs.getId()));
return Mono.just(fs);
}).flatMap(fi -> ServerResponse.created(URI.create("/fare/" + fi.getId())).build());
Run Code Online (Sandbox Code Playgroud)
我假设您正在使用 Spring Framework 的JmsTemplate实现,它是阻塞的。
如果没有更多上下文,我们只能假设您在反应式运算符中间有一个阻塞操作,这将导致您的应用程序出现问题。
| 归档时间: |
|
| 查看次数: |
1089 次 |
| 最近记录: |