我们一直在尝试通过ServiceStack自定义的HttpResult返回类型传输大文件。但是,如果服务在带有Mono v4.4.2的Ubuntu 14.04 LTS下运行,则在我们读取整个文件之前,连接会过早关闭。它在保持打开的时间内非常随意,有时我们可以传输50MB,有时它会以4MB关闭。
完全相同的服务没有代码更改在Windows下运行完美,我们已经传输了大到333MB的文件。
我们要么知道是什么原因导致过早的连接终止,或者如何设置servicestack / mono以允许连接保持打开更长的时间。
答案 0 :(得分:2)
在Mono上运行ServiceStack的推荐方法是使用我们发现的Nginx, HyperFastCGI提供比默认Nginx/Mono FastCGI更高的可靠性。
但最终Mono的HTTP协议栈本质上是不可靠的,与Windows / .NET相比表现不佳,我们建议使用它来代替繁重的工作负载。
在Linux上运行.NET的未来将是使用.NET Core,您可以投票选择this feature request以获得有关ServiceStack的.NET Core更新进度的通知。