1

我有大量(千兆字节)的 json 数据,我想通过一个安静的 Web 服务提供这些数据。数据的消费者将是另一个服务,并且这一切都将发生在服务器上(因此不涉及浏览器)。可以通过 http 传输多少数据是否有实际限制?http超时会开始发生,还是更多的是浏览器的功能?

4

1 回答 1

4

HTTP 正文没有大小限制。就像通过网络浏览器下载一个巨大的文件一样。超时是套接字连接的设置,HTTP 是在其上构建的,因此它不是浏览器指定的功能。

但是,我在传输相当大的 json 对象时遇到了同样的问题。需要考虑的是网络负载、序列化/反序列化时间和内存成本。整个过程很慢(2GB 的数据,通过 Intranet,使用 JSON.NET 和一些计算我们需要 2-3 分钟),并且需要相当大的内存。幸运的是,我们只需要每天执行一次,这是一个后端过程。所以我们不怎么关注它。我们只是对 HTTP 连接使用同步模式,并设置一个较长的超时值来防止超时异常(也许 async 是一个不错的选择)。

所以我认为这取决于你的硬件和基础设施。

于 2012-12-21T02:48:00.697 回答