在使用回调结构使用 Quarkus / Mutiny 实现 Reactive REST GET 端点并使用阻塞服务检查变体后,我最终使用了 CompletionStage / CompletableFuture API 版本;
如何使用 Quarkus/Mutiny 从我的 Reactive REST GET 端点调用 CompletionStage / CompletableFuture API 服务
在使用回调结构使用 Quarkus / Mutiny 实现 Reactive REST GET 端点并使用阻塞服务检查变体后,我最终使用了 CompletionStage / CompletableFuture API 版本;
如何使用 Quarkus/Mutiny 从我的 Reactive REST GET 端点调用 CompletionStage / CompletableFuture API 服务
再次证明它非常简单(尽管潜在的想法可能更复杂);
ServiceResource 只是将调用转发给服务。
MyRequestService 创建一个 MyJsonResultCompletableFuture ( CompletableFuture实现CompletionStage ) 并使用方法completionStage ()将其传递给 Mutiny Uni 。另一种可能性是使用;
生成的 Uni 返回到 ServiceResource。
最后 MyJsonResultCompletableFuture 阻止来自 MyReactiveServiceResource / MyRequestService 的调用,等待完成阶段。方法 ready() 完成此阶段并将 MyJsonResult 返回给 Mutiny(类似于某种回调)。