Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ASP.NET文件上载控件允许的最大文件大小_C#_Asp.net_Performance_File Upload - Fatal编程技术网

C# ASP.NET文件上载控件允许的最大文件大小

C# ASP.NET文件上载控件允许的最大文件大小,c#,asp.net,performance,file-upload,C#,Asp.net,Performance,File Upload,我在ASP.Net中使用文件上载控件,遵循以下方法 4MB默认值在machine.config中设置,但您可以在web.config中覆盖它。例如,要将上载限制扩展到20MB,您可以执行以下操作: <system.web> <httpRuntime executionTimeout="240" maxRequestLength="20480" /> </system.web> 问题: 直到什么级别(最大大小)我才能增加请求的长度,如果我们允许用户也

我在ASP.Net中使用文件上载控件,遵循以下方法

4MB默认值在machine.config中设置,但您可以在web.config中覆盖它。例如,要将上载限制扩展到20MB,您可以执行以下操作:

<system.web>
  <httpRuntime executionTimeout="240" maxRequestLength="20480" />
</system.web>

问题:
直到什么级别(最大大小)我才能增加请求的长度,如果我们允许用户也上传50-60 MB的文件,会对站点性能产生什么影响。

maxRequestLength字段的“理论”最大级别是有符号32位整数数据类型的最大值(
Int32.MaxValue

但是,为了了解性能,您必须测试上传

编辑:

发件人:

理论上,最大文件上载大小相当大。然而, 由于ASP.NET运行状况监视,您无法上载非常大的数据 ASP.NET中的文件。ASP.NET工作进程有一个虚拟地址 2千兆字节(GB)的空间。但是,ASP.NET工作进程仅限于 由于运行状况监视和内存的原因,使用略多于1 GB 碎片化

在上载过程中,ASP.NET会将整个文件加载到内存中 在用户可以将文件保存到磁盘之前。因此,这个过程 由于processModel的MemoryLit属性,可能会回收 标记在Machine.config文件中。memoryLit属性指定 ASP.NET工作进程可以使用的物理内存百分比 排气前的过程是自动回收。回收 防止内存泄漏导致ASP.NET崩溃或停止 回应

此外,其他因素也会影响所需的最大文件大小 可以上传。这些因素包括可用内存、可用内存 硬盘空间、处理器速度和当前网络流量。具有 定期上传文件,Microsoft建议您 使用10到20兆字节(MB)范围内的最大文件大小。如果 您很少上传文件,最大文件大小可能为100 MB

注意:您可以在ASP.NET中上载大于100 MB的文件。 但是,Microsoft建议您遵循最大文件上载量 本文中提到的尺寸。更精确地确定 文件大小,在与 将用于生产的产品


对性能的影响是,每次有人上传一个大文件时,它都会占用大量带宽……IIS 7的带宽大约为2GB(但@Liam对带宽的考虑是正确的)。如果您真的需要,最好实现另一个文件上传界面(例如使用POST和自定义浏览器扩展)。@Liam,@Adriano应用程序将托管在intranet上,因此可用带宽更大。但我想将用户限制在一定范围内,就好像IIS正在处理100MB-200MB的文件一样,网站的其他用户将获得较低的性能。@Pratik,更不用说您网络的其他用户了!即使在千兆以太网上,你也会有5个用户上传一个100Mb的文件,这会很糟糕-1,不,它是以KB表示的,限制要低得多(2097152KB=2GB)@Adriano我没有提到任何关于数字限定的内容。不过,很高兴知道是KB,我会更新我的答案。@davintroon该解释对于证明ASP.net文件上载控制的限制非常有用。谢谢。