HTTP获取和写入网络共享比写入本地驱动器慢得多

时间:2011-12-20 23:22:35

标签: c# httpwebrequest network-share

我有一个C# app正在将数据从website迁移到我们的客户新系统。为了从现有系统获取文件,我们使用HttpWebRequest,一旦我们得到响应,它就被写入磁盘,然后我们继续下一个文件。挺直的。我们要平均的吞吐量是每秒140Mbit。使用多个线程(8到12),以及5到7个进程实例,我能够达到目标吞吐量,但前提是我正在写入本地磁盘。如果我将其更改为写入NAS drive,则吞吐量会下降至少一半。

我尝试过写入不同的NAS设备,并在具有类似结果的不同机器上进行测试。

我已经尝试在多台机器上运行应用程序写入同一个NAS,这确实有帮助,但我最多有三台机器,但仍然没有匹配我的单机,写入本地磁盘性能。

我还没有尝试使用两个网卡(他们正在为我设置一个测试环境,以便在圣诞节后尝试这个)。这是我能想到的唯一可能有用的东西,虽然我感到困惑,因为所有机器上的NIC都是千兆位的,所以我不会这样,但我最大限度地把它拿出来。

这是一个Windows环境。 “Windows 7,Windows Server 2008.”

是否有任何可以提供帮助的注册表设置?我查看了NetworkThrottlingIndex,但这似乎只适用于传入的数据,并且只有当多媒体应用程序也在运行时(媒体播放器,IE等)

0 个答案:

没有答案