我即将实现REST服务器(在ASP.NET中虽然我认为这与此无关)。我想要做的是发出请求并返回结果。但是,这个结果是一个.XLSX文件,可能是一百万行。
如果我要生成一百万行电子表格,那么大约需要10分钟。 http请求将超时。那么什么是处理结果延迟的最佳方式。
其次,返回一个非常大的文件作为REST结果的最佳方法是什么?
更新:最常见的用例是REST服务器是Azure云服务Web工作者(基本上是Azure上的IIS)。客户端是在不同位置的不同服务器上运行的PHP Web应用程序。 PHP Web应用程序需要发送报告模板(通常为25K),数据可以是SQL数据库的连接字符串,或者......可以是500M XML文件。这就是请求,一个包含模板和数据源的XML文件。
文件的响应 - PDF,DOCX,XLSX,PPTX或HTML。这可以是XML文件中的BLOB,也可以是文件本身。如果出现错误,则必须返回带有错误信息的XML。最大的问题是,如果一切正常,可能需要10分钟才能生成此文件。当它是一个100万行电子表格时,需要时间来下载所有数据并填充创建的XLSX文件。第二个问题,这是一个非常大的文件。
所以即使一切都很完美,也会有很大的延迟和很大的反应。
答案 0 :(得分:1)
我看到两个选项:
答案 1 :(得分:0)