将文件上传到Azure Blob时的ASP.NET Core内存消耗

Andreasnauta

当我将文件上传到Azure Blob时,内存消耗似乎很高。以下数据来自200 MB的文件上传。

public async Task<IActionResult> PostFile(IFormFile file)
{
    var filePath = Path.GetTempFileName();

    using (var stream = new FileStream(filePath, FileMode.Create))
    {
        -> Memory used: 108 MB

        await file.CopyToAsync(stream);

        -> Memory used: 308 MB

        await blockBlob.UploadFromStreamAsync(stream);

        -> Memory used: 988 MB
    }
}

由于文件已经加载到流中,因此我无法理解由UploadFromStreamAsync()引起的已消耗内存的急剧增加。我正在使用Microsoft.WindowsAzure.Storage 8.1.4和.NET Core 1.1。

我做错什么了吗?或者这是预期的行为?

张白兰

我的测试应用程序是MVC应用程序,因此仅占用243个内存使用量。

Web api应用程序与MVC应用程序的内存使用情况不同。

我的Web API应用程序使用率为1G,如下图所示:

在此处输入图片说明

我做错什么了吗?或者这是预期的行为?

这是预期的行为。

我建议您可以使用拍摄快照来查看堆大小更改信息。

您可能会看到堆大小已释放,但内存使用量仍为1G。

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将文件从Angular上传到ASP.NET Core

使用ASP.NET中的文件上传器将图像上传到Azure Blob?

通过 Postman 将文件上传到 ASP.NET Core API 时出现错误 415

从 ASP.NET 上传到 Azure blob 的文件是空的

如何使用基于ASP.NET和.NET的Controller将260kb PDF文件上传到Azure Blob存储?

如何知道何时在ASP.NET中完成将多个文件上传到Azure存储Blob的过程

使用Asp.NET Core 3.1框架将文件上传到服务器时,如何使用IFormFile作为属性?

使用 ASP.NET Core Web API 将图像上传到 Cloudianary 时出现空文件错误

使用Angular将文件上传到ASP.net Core API

将 Excel 文件从 React 上传到 C# ASP.NET Core 后端

使用axios将Vue中的XML文件上传到ASP .NET Core

无法将文件从Angular 8上传到Asp.net Core 2.2

如何将文件上传到 ASP.NET Core 控制器?

如何将文件从Angular上传到ASP.NET Core Web API

将文件上传到Blob Azure

将文件上传到ASP.Net中的Dropbox

将文件从Gridview上传到Database asp.net

如何将文件上传到ASP .NET?

使用 Microsoft Graph 将 C# Asp.Net Core 中的文件上传到 Sharepoint/OneDrive,无需用户交互

无法将文件〜200mb上传到asp.net核心服务器端的Azure Blob存储中

如何将文件直接从 Spring Boot 应用程序上传到 azure blob 存储,而不将文件放入内存(缓冲内存)

ASP.NET核心高内存消耗

通过HTTP将文件上传到ASP.NET,再上传到C#中的FTP服务器

尝试将文件上传到Azure文件共享时出错

Windows Azure-使用队列将文件上传到Blob

无法将Excel文件上传到Azure存储Blob

将文件上传到Azure Blob存储中

如何使用 Postman 将文件上传到 Azure Blob 存储?

如何从MVC视图将文件上传到Azure Blob存储