【问题标题】:Azure Function V1 Call another azure function from current azure functionAzure Function V1 从当前 azure 函数调用另一个 azure 函数
【发布时间】:2018-12-24 11:33:36
【问题描述】:

我正在使用 Azure Function V1 c#。我有一个时间触发的天蓝色函数,它每秒检查数据库中的一些数据。如果找到数据,我想对其执行一些操作。此操作可能需要 30 秒到 5 分钟,具体取决于其上发生的操作。

  1. 当我的时间触发函数获取数据并开始对其执行操作时。在第一次操作完成之前,不会再次执行时间触发功能。因此,即使时间触发函数被安排为每秒执行一次,如果前一次迭代中的操作花费了 30 秒,它也不会在接下来的 30 秒内执行。我该如何解决?

  2. 我可以从当前时间触发的函数中调用其他一些 azure 函数来处理这 30 秒吗?运行操作,我的时间触发功能每秒运行顺畅吗?

  3. 如何从当前时间触发的函数中调用另一个天蓝色函数(自定义函数)?

谢谢,

【问题讨论】:

    标签: azure azure-functions


    【解决方案1】:

    您可能需要考虑适用于这种情况的逻辑应用。逻辑应用是 Azure 提供的无服务器工作流产品。使用重复触发器来安排作业(http 调用),无论如何它都会触发 azure 函数。 https://docs.microsoft.com/en-us/azure/connectors/connectors-native-recurrence

    如果你想触发任何外部函数,你可以使用 httpclient。 Azure Functions call http post inside function

    【讨论】:

    • 谢谢伊姆兰。感谢您的支持。所以你的意思是从我的时间触发的天蓝色函数中调用另一个函数,我必须创建另一个作为 HttpTriggered。对吗?
    • Yes Yash,并从函数 A 调用函数 B 的 webhook。确保不要等待函数 B 的响应,否则你会遇到同样的问题。在同一函数本身中实现它的另一种方法是在函数内部运行一个并行线程,它为您执行长时间的操作,但在函数之间划分职责总是更好。谢谢。
    • 嗨亚什。不知道为什么你现在需要时间触发功能。只需创建 Http 触发函数并将您的 Db 操作逻辑从时间触发函数移动到 http 触发。您需要将此 http 触发函数安排到逻辑应用程序中以每秒运行一次。逻辑应用将不等待 http 触发函数响应,并将并行启动新的 http 触发函数。
    • 您也可以按照 Durable Azure 函数模式来实现您的要求。这是微软为持久的天蓝色功能提供的简短文档。 docs.microsoft.com/en-us/azure/azure-functions/durable/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-21
    • 2019-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多