18

是否存在处理大文件的最佳块大小之类的东西?我有一个上传服务 (WCF),用于接受数百兆字节的文件上传。

我已经尝试过 4KB、8KB 到 1MB 的块大小。更大的块大小有利于性能(更快的处理),但它是以内存为代价的。

那么,有没有办法在上传文件时计算出最佳的块大小。如何进行这样的计算?是否是可用内存和客户端、CPU 和网络带宽的组合决定了最佳大小?

干杯

编辑:可能应该提到客户端应用程序将处于silverlight。

4

1 回答 1

8

如果您担心资源不足,那么最好通过根据系统的可用内存评估您的峰值上传并发性来确定最佳值。在您可能进行的任何计算中,您一次同时进行多少次上传将是关键的关键变量。您所要做的就是确保您有足够的内存来处理上传并发,而这很容易实现。内存很便宜,而且您很可能会在您的并发性超出内存可用性的地步之前用完网络带宽。

在性能方面,这不是您在应用程序设计和开发过程中真正可以优化的东西。您必须让系统到位,用户上传真实的文件,然后您才能监控实际的运行时性能。

尝试匹配您网络的TCP/IP 窗口大小的块大小。这与您在设计时真正需要的最佳值差不多。

于 2010-09-09T04:12:33.830 回答