在Spray中,对于分块响应,我们可以发送带有 ack 的分块消息,如
peer ! MessageChunk(buffer).withAck(MyAck(k))
我们可以获得确认消息传递到OS网络层的确认消息。我们是否有类似超时的事情?
答案 0 :(得分:0)
我认为喷涂中没有内置的Ack超时功能。
Chunking Actor 应该可以跟踪已发送的消息&如果您的Ack包含有关已发送块的详细信息,则超时。请参阅ChunkingActor[T]
用于编组Stream[T]
in the spray source code以了解如何执行此操作。您可以选择让此演员跟踪发送的最后一个块以及发送的时间。如果Ack在设置超时期间没有返回该块,则可以处理块传递已“超时”的情况。