当前位置: 首页 > 知识库问答 >
问题:

使用部署的Azure功能从blob存储下载文件非常慢

孔逸春
2023-03-14

我们使用Python 3.8长期以来一直存在这个问题。

  1. 通过“func start”在本地运行Azure函数并从blob存储下载文件与预期一样快
  2. 运行已部署的Azure函数(通过应用服务计划)会导致~50kb/s的下载速度

这里的问题是什么?

我期望部署的函数下载blob文件的速度甚至比在本地运行它更快,因为它们在同一个网络中?

文件大小约为2 MB,使用Azure blob storage v12.8.0和以下代码

blob_client = service_client.get_blob_client(container=container_name, blob=file_name)
data = blob_client.download_blob(max_concurrency=4)
return data.readall()

问候塞巴斯蒂安

共有1个答案

白灿
2023-03-14

建议您通过sas令牌下载,因为我之前在运行nodejs程序时对其进行了测试,发现使用sas令牌的下载速度更快。

您可以在下面的帖子中阅读我的测试步骤。

提高axios获得下载速度

 类似资料:
  • 我想通过运行在Azure VM上的FTP服务器与用户共享Azure Blob存储中的文件。 据我所知,您不能在VM上挂载Blob存储,但可以使用“网络使用”挂载Azure文件共享。 Blob存储上的文件将以增量方式上载,因此理想情况下,我希望在上载时将其复制到Azure文件,Azure功能似乎是理想的方式,因为它们很容易为我设置和处理Blob存储上的触发器。 我如何使用Azure功能将文件从Blo

  • 我能够通过Node/Express将文件上传到Azure blob存储,没有任何问题,但我找到了关于如何下载文件的非常少的文档/完整示例。我在教程页面上找到了这个,但是运气不好: 是否有其他人使用node.js/express从Azure blob存储下载文件?您是否使用Azure或其他方法(例如请求)。您能否分享如何从Azure获取文件并将其流式传输到文件夹?

  • 我在这里讨论一下文档:https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-blob-output?tabs=python 以下是我目前掌握的代码: function.json 初始化。py 如果我理解正确,当一个Blob被添加到容器中时,这个函数应该被触发,并且它可以在同一个容器中保存该

  • 从16:00到16:12,下载有短暂的暂停。停顿之间的间隔是相同的,但长度会增加。在 16:12 时,速度变为 Kb/s,并且永远不会返回到正常值。 下面是进行下载的代码(。NET 4.0): 这些问题的原因可能是什么? 编辑 为了获取统计信息,我使用以下 Stream 实现:

  • 简要背景:我有一个在Azure Blob存储中存储文件的web服务。该服务的用户可以一次下载多个文件。如果下载的所有文件的总文件大小相对较小,那么我在服务器上压缩文件并返回该压缩文件--这里没有问题。 场景:例如,如果一个用户想要下载3个每个1GB的文件,那么我将这些文件下载到服务器是不现实的,将它们压缩,然后将压缩文件返回到浏览器。因此,对于这些场景,我将Azure Blob Storage U

  • 你能帮我从下载中重命名吗?