我使用的文件上传控件在ASP.Net,跟着下面的博客的方式。
http://weblogs.asp.net/jgalloway/archive/2008/01/08/large-file-uploads-in-asp-net.aspx
4MB的默认设置是在machine.config中,但你可以在你的web.config覆盖它。 例如,为了扩大上传限制为20MB,你可以这样做:
<system.web>
<httpRuntime executionTimeout="240" maxRequestLength="20480" />
</system.web>
问:到什么水平(MAX尺寸)我可以增加请求的长度,什么将会对网站性能的影响,如果我们允许用户同时上传50-60 MB的文件。
对于该“理论”最大电平maxRequestLength
字段是带符号的32位整数数据类型(最大值Int32.MaxValue
)。
然而,你将要测试的上传,以了解你的表现。
编辑:
从微软支持票 :
理论上,最大文件上载大小是相当大的。 但是,由于ASP.NET运行状况监视,无法在ASP.NET中上载很大的文件。 ASP.NET工作进程具有2千兆字节(GB)的虚拟地址空间。 然而,ASP.NET工作进程只能使用稍多于1 GB,因为健康监测和内存碎片。
在上载过程中,ASP.NET加载到内存整个文件之前,用户可以将文件保存到磁盘。 因此,该过程可能因为processModel标记的Machine.config文件中的memoryLimit属性而回收。 memoryLimit属性指定的ASP.NET辅助处理可能会耗尽之前的过程是自动回收物理存储器的百分比。 回收可防止因内存泄漏而导致ASP.NET崩溃或停止响应。
此外,其他因素也会影响可以上载的最大文件大小的作用。 这些因素包括可用的存储器,可用硬盘空间,处理器速度,和当前的网络业务。 随着文件的常规流量的上传,Microsoft建议您在10至20兆字节(MB)的范围内使用的最大文件大小。 如果您很少上载文件,则最大文件大小可以为100 MB。
注意:您可以上传在ASP.NET大于100 MB的文件。 但是,Microsoft建议您按照这篇文章中提到的最大文件上载大小。 为了确定更精确的文件大小,则执行类似于将在生产中使用的那些计算机上压力测试。