asp.net - 在 azure blob 存储中生成 ZIP 文件

标签 asp.net azure azure-blob-storage azure-batch

压缩 AZ blob 存储中存在的大文件并将其以存档文件 (zip/rar) 下载给用户的最佳方法是什么 使用 azure 批处理有帮助吗? 目前我们以传统的方式实现这个功能,我们读取流生成zip文件并返回结果,但这需要服务器上的大量资源和用户的时间。 我正在询问最佳的技术和技术解决方案(使用 Microsoft 技术的首选方式)

最佳答案

有几种方法可以做到这一点**from azure-batch only point of view** :(对于初始部分,用户代码应该拥有他们用来压缩文件的任何 zip api但是一旦它在 blob 中并且用户想要在节点中使用,那么就有下面提到的选项。 )

对于你问题的最初部分,我发现这个可以派上用场:https://microsoft.github.io/AzureTipsAndTricks/blog/tip141.html (但这主要是出于想法,您会更好地了解+需要相应地设计您的解决方案空间)

在下面的选项 1 和 3 中,您需要确保您的用户代码能够处理 zip 文件的解压或解压。选项 2 是 *.zip 的批处理内置功能在池和任务级别都归档。

The application packages feature of Azure Batch provides easy management of task applications and their deployment to the compute nodes in your pool. With application packages, you can upload and manage multiple versions of the applications your tasks run, including their supporting files. You can then automatically deploy one or more of these applications to the compute nodes in your pool.

An application package is a .zip file that contains the application binaries and supporting files that are required for your tasks to run the application. Each application package represents a specific version of the application.

  • 关于大小:请参阅上面文档中 blob 链接中允许的最大值。

  • 选项 3:(不确定这是否适合您的场景)不太适合您的特定场景,但您也可以将虚拟 blob 安装到加入池 via mount feature in azure batch 处的驱动器上。 并且您需要在启动任务时编写代码或从安装位置解压缩一些东西。

希望这有帮助 :)

关于asp.net - 在 azure blob 存储中生成 ZIP 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58435521/

相关文章:

.net - 使用 ASP.NET 循环 <li>

.net - Azure .NET 语言包

javascript - 使用 UploadBrowserDataToBlockBlob 从 Javascript 上传时在 Azure Blob 中设置内容类型

azure - Azure 存储中的 VHD 如何收费?

azure - 仅当在具有 azure 访问权限的 Windows 帐户上运行时,使用 ClientID 访问 Blob 存储才有效

c# - 如何在 ASP.NET MVC 4 中正确使用元组

html - 设置文本框的可点击背景

c# - 如何使用 ViewModel 模式在 MVC 中编辑多个表

azure - 如何将存储在 azure 表或事件中心中的指标公开给 prometheus?

azure - 使用 NLog 过滤 Azure 函数日志