我有一个关于增加最大帧大小和发送/接收缓冲区大小值的问题。他们的高度有限制吗?
我将大量数据传递到系统中(比如 20mb),然后用于计算一些结果并返回。将上述参数设置为 100mb 会导致消息被丢弃。在这种情况发生之前我可以通过的最大块大约是 5mb。我尝试增加连接和确认的超时,但似乎没有什么区别。
另外,如果消息被删除,有什么方法可以收到通知吗?有时它会发送一个“解除关联”错误,有时它只是什么也不做。 log-frame-size-exceeding = on 和 log-buffer-size-exceeding = 50000 设置似乎没有效果。
任何帮助表示赞赏。谢谢。
您应该将消息分割成更小的片段,并在接收端重建对象。它将使您的重试变得更加容易,并且不会“占用”套接字(例如,如果您通过套接字发送 100mb,则将其捆绑起来,以便心跳无法从远程系统传递)。
我写了一个深入的帖子 https://petabridge.com/blog/large-messages-and-sockets-in-akkadotnet/关于 Akka.NET 中大消息和套接字发生的情况,您可能会觉得有用。但简单的答案是将消息分割成小块并在接收端重建它,或者更好的是,以流式处理方式处理它们。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)