0

使用回调结构使用 Quarkus / Mutiny 实现 Reactive REST GET 端点并使用阻塞服务检查变体后,我最终使用了 CompletionStage / CompletableFuture API 版本;

如何使用 Quarkus/Mutiny 从我的 Reactive REST GET 端点调用 CompletionStage / CompletableFuture API 服务

4

1 回答 1

0

再次证明它非常简单(尽管潜在的想法可能更复杂);

在此处输入图像描述

ServiceResource 只是将调用转发给服务。

在此处输入图像描述

MyRequestService 创建一个 MyJsonResultCompletableFuture ( CompletableFuture实现CompletionStage ) 并使用方法completionStage ()将其传递给 Mutiny Uni 。另一种可能性是使用;

Uni.subscribe().asCompletionStage()

生成的 Uni 返回到 ServiceResource。

在此处输入图像描述

最后 MyJsonResultCompletableFuture 阻止来自 MyReactiveServiceResource / MyRequestService 的调用,等待完成阶段。方法 ready() 完成此阶段并将 MyJsonResult 返回给 Mutiny(类似于某种回调)。

于 2021-04-10T19:41:03.563 回答