【问题标题】:Azure Logic Apps FTP concurrent triggersAzure 逻辑应用 FTP 并发触发器
【发布时间】:2019-09-17 16:48:12
【问题描述】:

我正在开发一个 Azure Logic 应用程序,该应用程序从 FTP 读取添加的文件并将它们作为 POST 发送到 Azure 函数。在此之后,该文件将从 FTP 服务器中删除。 总执行时间约为 1 秒。 我面临的问题是逻辑应用程序似乎一次只能处理一个文件,因此逻辑应用程序每分钟最多只能处理 60 个新文件。 我已将并发运行次数设置为 42,但这似乎没有任何改变。

如何让这个 Logic 应用更快地处理这些文件?

  "triggers": {
            "When_a_file_is_added_or_modified": {
                "inputs": {
                    "host": {
                        "connection": {
                            "name": "@parameters('$connections')['ftp']['connectionId']"
                        }
                    },
                    "method": "get",
                    "path": "/datasets/default/triggers/onupdatedfile",
                    "queries": {
                        "folderId": "L2Z0cC9maWxlcw==",
                        "includeFileContent": true
                    }
                },
                "metadata": {
                    "L2Z0cC9maWxlcw==": "/ftp/files"
                },
                "recurrence": {
                    "frequency": "Second",
                    "interval": 15
                },
                "runtimeConfiguration": {
                    "concurrency": {
                        "runs": 42
                    }
                },
                "type": "ApiConnection"
            }
        }

【问题讨论】:

    标签: azure-functions azure-logic-apps


    【解决方案1】:

    这不是 FTP 连接器的问题,你可以检查触发器 description,它从来没有说它可以响应多个文件。

    如果同时修改多个文件,会多次触发逻辑应用。如果concurrent setting 关闭,则表示无限制,也没有最多 60 个文件的限制。

    我测试了 100 个文件,都可以触发。结果将如下图所示,它们将同时运行。

    【讨论】:

    • @Marknl,如果这可以帮助你,请接受它作为答案。
    【解决方案2】:

    我相信 FTP 触发器的行为是它一次只返回一个文件(尤其是在这种情况下,当文件内容包含在触发器的主体中时),但如果有更多文件准备好被触发,则会收到一个信号并将立即获取下一个。它是否会获取下一个是您的并发设置有帮助的地方。所以行为:

    1. 在轮询间隔检查新文件
    2. 如果是新文件,则触发。触发器还将包括“还有更多”或“仅此而已吗?”标志(retry-after 标头)
    3. 如果还有更多,立即返回并获取下一个文件。
    4. 如果没有更多,等待下一个轮询间隔
    5. 重复

    【讨论】:

    • 我不明白。这个重试后标头和“还有更多”信息来自哪里?
    • 连接器为您设置。如果已上传多个文件,则设置该标头是连接器代码的一部分
    猜你喜欢
    • 1970-01-01
    • 2019-02-15
    • 1970-01-01
    • 2021-08-27
    • 1970-01-01
    • 2021-11-30
    • 1970-01-01
    • 2021-08-01
    • 1970-01-01
    相关资源
    最近更新 更多