在天蓝色存储中存档大文件的方法

时间:2018-03-27 18:35:37

标签: azure azure-web-sites azure-storage asp.net-core-webapi

我对在您的项目中在云中存储敏感数据的方法感兴趣。

我想准备要在Azure中归档文件的功能概念证明。我们每天都在讨论大约30GB的新文件。每个文件10-2000 MB。

我的第一个想法是使用Azure存储来存储这些文件。 应该通过Azure App Service将文件发送到存储,因此我必须准备一些WEBApi。

基于这个想法,我很好奇,如果将这么大的文件发送到webapi不会有任何问题吗? 任何提示我还应该考虑什么?

1 个答案:

答案 0 :(得分:0)

ASP.NET的默认请求大小 4MB ,因此如果您想允许上传和下载较大的文件,则需要增加该限制。

您可以通过在web.config文件中设置maxRequestLength和maxAllowedContentLength值来完成此操作。

注意:maxRequestLength值以KB为单位,但maxAllowedContentLength值以字节为单位。

以下是将请求限制增加到2000MB的示例:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.web>
        <!-- 100 MB in kilobytes -->
        <httpRuntime maxRequestLength="204800" />
    </system.web>

    <system.webServer>
        <security>
            <requestFiltering>
                <!-- 100 MB in bytes -->
                <requestLimits maxAllowedContentLength="209715200" />
            </requestFiltering>
        </security>
    </system.webServer>
</configuration>

您可以使用异步任务,主要是为了更好地支持处理大文件。

以下是关于使用Web API和Azure Blob存储上传和下载大文件的article,您可以参考它。