3

我试图有一个 Akka 流,其中一些阶段是 http 调用。由于 http 调用有时会(并且将会)失败,我更愿意将相关数据放入单独的队列(甚至可能在我的应用程序外部),一段时间后将它们拉出并在流中使用它们。

我正在使用喷雾客户端进行 http 调用。但我对其他客户(包括较新的 akka-http)持开放态度。

实现这一目标的最干净的方法是什么?我不能进行同步重试,因为这会阻塞舞台。目前我将失败的http请求放到raabitmq,在每个http阶段之前添加一个RMQ消费者源和一个合并节点。这符合我的目的,但使流代码丑陋且难以管理。使用这种方法,即使是简单的线性拓扑也会变成复杂的图。

我使用 Akka 流(通过普通的 akka 解决方案)主要是为了方便组合和背压。

在这种情况下(在 akka-stream 内外)我有什么选择。对于其他设计约束,我想坚持使用 Akka 解决方案。

4

0 回答 0