Asp.net 在IIS中一次请求上载大文件时的内存使用情况
我要用IIS7/8在ASP.NETMVC中实现一个网站,我需要上传大文件(几GB)。我知道我可以在web.config中更改配置,以上载最多4GB的文件。但是我有点担心内存的使用Asp.net 在IIS中一次请求上载大文件时的内存使用情况,asp.net,iis,file-upload,Asp.net,Iis,File Upload,我要用IIS7/8在ASP.NETMVC中实现一个网站,我需要上传大文件(几GB)。我知道我可以在web.config中更改配置,以上载最多4GB的文件。但是我有点担心内存的使用 如果我在一个请求中上传了一个3GB的文件(只使用一个包含一个表单、一个文件输入元素和一个提交元素的网页),它会消耗我服务器的3GB内存吗?或者IIS 7/8是否会自动将内容分块通过Request.InputStream传递,以便服务器端内存使用可以接受?如果是这样,我是否需要配置IIS以支持区块接收?IMO对于这些数据
如果我在一个请求中上传了一个3GB的文件(只使用一个包含一个表单、一个文件输入元素和一个提交元素的网页),它会消耗我服务器的3GB内存吗?或者IIS 7/8是否会自动将内容分块通过Request.InputStream传递,以便服务器端内存使用可以接受?如果是这样,我是否需要配置IIS以支持区块接收?IMO对于这些数据量(超过1 GB),您可以使用ftp。这就是这项技术的用途。如果将asp.net控件用于如此大量的数据,这显然不是最好的方法。你也可以考虑 (小量装载)[ 回答你的问题 在上载过程中,ASP.NET会在用户将文件保存到磁盘或数据库之前将整个文件加载到内存中。因此,由于Machine.config文件中processModel标记的MemoryLit属性,该过程可能会循环 如果你试图上传这么大的文件,你可能会遇到很多不同的错误
The page cannot be displayed
及
及
引发了System.OutOfMemoryException类型的异常
你可以在这里读更多
希望能有帮助
Server Application is Unavailable