我已经看过使用Akka Streams来避免背压的例子,但是如果我需要在下游获得自定义acks
,我想知道它是如何工作的?
在我的特定情况下,我在链中有几个flows
处理邮件,当它达到某个flow
时,我想将ack
传递回源表示我现在已经拥有所有权"正在处理的资源。
这在Akka Streams中如何运作?
答案 0 :(得分:1)
我认为这个问题不止一个解决方案。一种简单的方法是使用Promise[Unit]
来增强数据,以便成功完成 ack 。
这有其缺点(即缺乏背压支持),但它具有简单性。
有关该主题的更多信息,请查看this blogpost。
Acked-stream是一个基于这种方法的优秀图书馆。