azure - 将文件从 SFTP 复制到 Blob 存储时并行化 Azure 逻辑应用执行

标签 azure azure-blob-storage azure-logic-apps

我有一个 Azure 逻辑应用程序,当在 SFTP 服务器中添加或修改新文件时会触发该应用程序。发生这种情况时,文件将复制到 Azure Blob 存储,然后从 SFTP 服务器中删除。每个文件此操作大约需要 2 秒。

我遇到的唯一问题是这些文件(平均 500kb)是逐个处理的。鉴于我希望每天传输大约 30,000 个文件,这种方法会变得非常慢(大约 18 小时)。

有没有办法扩展/并行化这些执行?

最佳答案

我不确定 Azure 逻辑应用程序上是否有横向扩展/并行化执行。但根据我的经验,如果时效性要求不是很高的话,可以使用 Foreach为此,ForEach 并行度限制为 50,默认值为 20。

就您而言,我的建议是,我们可以在 SFTP 中添加或修改新文件时进行循环触发,然后我们可以插入一条以文件路径作为内容的队列消息到 azure 存储队列,然后根据时间或结束循环的队列长度。我们可以得到队列消息集合。最后,获取队列消息并从 SFTP 获取文件以在 foreach 操作中创建 blob。

关于azure - 将文件从 SFTP 复制到 Blob 存储时并行化 Azure 逻辑应用执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46938731/

相关文章:

php - 从运行 PHP 的应用服务调用 Azure 表存储时出现 cURL 错误 60

azure - 如何将具有特定模式的 csv 文件解析为逻辑应用服务中的数组

azure - 由于数据工厂模式,无法使用 GIT 同步发布 Azure 数据工厂?

azure - 在逻辑应用中的 JSON 响应中获取属性的数组长度

azure - 如何使用 powershell 设置 azure 逻辑应用定义

.net - 如何将 .NET 控制台日志从 Azure 应用服务获取到 Azure 事件中心?

azure blob 存储日志记录/分析 GUI 工具?

c# - 仅下载 Azure Blob 的前几个字节

azure - 如何指定 BlobTrigger 绑定(bind)以便容器名称可配置?

azure - 使用 Azure 逻辑应用从 Salesforce 获取记录