【发布时间】:2015-03-11 03:33:20
【问题描述】:
我有一个服务器,其中包含一些对象的列表。 列表大小介于 3GB - 4GB 之间,这使得使用最大消息大小 2147483647 (2.14 GB) 是不可能的。
有办法在一次传输中发送这种大小的列表吗?
或者也许有一种方法可以将列表分成小部分并将它们发送到多线程?
任何想法都会很棒!
【问题讨论】:
-
有点可疑。为什么要在内存中保存一个 3GB - 4GB 的列表?
-
是的,将它们分批到多个调用中,但是要向下发送服务会产生大量数据,使用 ETL 可能会更简单。对于批处理,这篇文章将是一个好的开始:make-awesome.com/2010/08/…
-
我认为您应该阅读有关流媒体的内容。但是,有很多事情需要考虑。如果 WCF 托管在 IIS 上,您还需要为 IIS 添加配置以允许如此大的请求。您还可以查看 WCF 会话并在多个请求中发送所有数据,但在同一个会话中。我会开始阅读:大型请求的 IIS 配置、WCF 和 ASP.NET 流、WCF 会话,然后为特定场景选择正确的组合。
-
@Sriram Sakthivel 数据在数据库中,我在服务器端导入,需要发送到客户端。
-
@OrCohen 您要解决的真正问题是什么?您是否尝试向客户端发送报告或 Excel 文件?您是否要在网格中显示 4GB 的数据?您是否要在某处导出数据?到目前为止,您已经描述了您认为是解决方案的问题。
标签: c# wcf silverlight