自定义Akka Streams GraphStage和Futures,如`mapsync`

自定义Akka Streams GraphStage和Futures,如`mapsync`,akka,akka-stream,Akka,Akka Stream,我有一个akka streams应用程序,它在处理过程的中途执行一些IO副作用,这些副作用被包装在未来的中。通常我会通过mapsync进行此调用,但在成功调用后,我需要缓存上一个元素的信息,即IO调用是根据上一次调用的结果生成的。 Akka网站上提供的示例Map实现非常简单,但是mapsync的实现更复杂。是否有任何样板或子类可用于实现带有异步操作的GraphStage?我的倾向是,onPush和onPull在产生结果并替换之前,需要检查“持有”的未来是否完成 另一方面,我也可以用ask模式将此

我有一个akka streams应用程序,它在处理过程的中途执行一些IO副作用,这些副作用被包装在
未来的
中。通常我会通过
mapsync
进行此调用,但在成功调用后,我需要缓存上一个元素的信息,即IO调用是根据上一次调用的结果生成的。

Akka网站上提供的示例
Map
实现非常简单,但是
mapsync
的实现更复杂。是否有任何样板或子类可用于实现带有异步操作的GraphStage?我的倾向是,
onPush
onPull
在产生结果并替换之前,需要检查“持有”的未来是否完成

另一方面,我也可以用
ask
模式将此发送给演员。但我不确定该参与者是否会有适当的背压,比如有界邮箱。

如果IO调用是“根据上一次调用的结果生成的”,那么应该如何处理流中的第一个元素,因为之前没有调用???