Akka HTTP流侦听器在一段时间后停止处理数据字节

Akka HTTP流侦听器在一段时间后停止处理数据字节,akka,akka-stream,akka-http,Akka,Akka Stream,Akka Http,我有一个应用程序,它有3个HTTP侦听器,如下所示: val futureResponse1: Future[HttpResponse] = Http().singleRequest(HttpRequest(uri = someUrl)) 3个用户中的每一个都在收听一个不间断的流(每一个都在收听不同的流)。并通过一个简单的流程进行处理,该流程从分组开始,然后是相对快速的处理(非阻塞): 我没有得到例外或警告。但是过了一段时间(可能是15-25分钟),听众突然停止了。一个接一个(不在一起)

我有一个应用程序,它有3个HTTP侦听器,如下所示:

val futureResponse1: Future[HttpResponse] =
  Http().singleRequest(HttpRequest(uri = someUrl))
3个用户中的每一个都在收听一个不间断的流(每一个都在收听不同的流)。并通过一个简单的流程进行处理,该流程从分组开始,然后是相对快速的处理(非阻塞):

我没有得到例外或警告。但是过了一段时间(可能是15-25分钟),听众突然停止了。一个接一个(不在一起)

也许问题出在分组阶段?或者可能连接/流刚刚停止?或者他们共享的调度程序正在挨饿/某些东西没有被释放

你知道为什么会这样吗

==更新====

@拉蒙·J·罗梅罗·y守夜 我将我的跑步改为只有1个流,而不是3个流,并且我删除了分组的阶段。几分钟后仍在发生。我怀疑流正在基于超时关闭。我所做的就是拿块吃

==更新====

找到原因,请参见下文。

这就是原因:

EntityStreamSizeException:实际实体大小(无)超过了内容长度限制(8388608字节)!您可以通过设置akka.http.[server | client].parsing.max-content-length或在具体化数据字节流之前调用HttpEntity.withSizeLimit来进行配置

对于在连续响应流的情况下寻求解决方案的任何人,您可以使用withoutSizeLimit以这种方式获取源:

val source: Source[ByteString, Any] = response.entity.withoutSizeLimit().dataBytes

你能提供更多关于“这3个人中的每一个人都在听一个不间断的流”的细节吗?
未来
值和流之间的交互可能是问题的根源。。。
val source: Source[ByteString, Any] = response.entity.withoutSizeLimit().dataBytes