在 Azure 存储中归档大文件的方法

Approach for archive big files in azure storage

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

我想准备必须在 Azure 中存档文件的功能的概念证明。我们谈论的是每天大约 30GB 的新文件。每个文件 10-2000 MB。

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

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

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>

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

这里有一篇article关于使用WebAPI和Azure Blob Storage上传和下载大文件的文章,你可以参考。