azure - 即使在 30 秒后,逻辑应用也会返回网关超时错误

标签 azure azure-functions azure-logic-apps azure-api-management

我有一个从 APIM > 功能 > 逻辑应用 > D365 调用的逻辑应用(基于 http 请求触发器的同步调用)。当我第一次调用它时(一天后或几个小时后),花费的时间比平时更长(大约 25-30 秒)并导致网关超时错误。

当我第二次调用它时,它通常会在 8-10 秒内完成操作,没有超时。

错误消息是典型的: 模板操作“Response__to_be_displayed”的执行失败:客户端应用程序在等待服务响应时超时。这意味着工作流的响应时间比分配的超时值要长。客户端应用程序和服务之间维护的连接将关闭,客户端应用程序将收到 HTTP 状态代码 504 网关超时。

在保持模式同步的同时,我认为这不会导致超时问题。我已经检查过这个link还有这个one也是,但这并不能解决我的问题。 我想保持调用同步(这只是 25-30 秒的调用),这是否与 APIM 策略或逻辑应用中可以增加此速度的任何设置有关?

最佳答案

  • 您可以增加逻辑应用和 APIM 中的超时。对于 APIM,我们实现一项策略,该策略将规定超时以及在逻辑应用中的应用设置。

  • 但是对于APIM,如果超时超过240秒,那么APIM将不可靠,建议寻找该函数的实现。

  • 现在要增加 APIM 中的超时,我们必须设置转发请求策略,并且该策略具有超时属性,您可以将其设置为所需的限制。

  • 转到 APIM 中的策略片段并将以下内容添加到策略中

<forward-request timeout="60"/> 

enter image description here

  • 现在关于逻辑应用程序,我们可以通过设置应用程序设置来设置自定义超时。为此,您需要两项设置,一项是阈值,另一项是超时。您必须将这些添加到应用程序设置中,该应用程序设置位于逻辑应用程序门户的配置下。

  • 调用设置

Runtime.FlowRetentionThreshold

Runtime.Backend.FlowRunTimeout

这些设置的值的格式为Days.hours:Minutes:Seconds,例如:00.00:05:00 这是 5 分钟

enter image description here

  • 另请检查您的函数是否正常工作,因为逻辑应用中的工作流超时和 APIM 超时默认值超过了根据您执行任务所需的时间。

引用此msDoc关于逻辑应用程序超时

引用此msdoc APIM 超时。

关于azure - 即使在 30 秒后,逻辑应用也会返回网关超时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73441837/

相关文章:

azure - 通过 SSH 连接到 Docker 容器的 Azure 应用服务

java - 当消息发送到 Azure 事件中心主题时,垃圾值添加到 header

azure - 逻辑应用程序的内部 Azure ASE 入站/出站流量

Azure 逻辑应用 SMTP 错误请检查您的帐户信息和/或权限,然后重试

azure - 如何在 Azure Log Analytics 中识别要查询的表

azure - 如何为 AKS 和 Helm 设置 ASP.NET CORE Web 和 WebAPI 容器之间的通信

azure - 将 Azure AppServices 中的 Web API 的访问限制为 Azure Function 应用程序,同时允许其他服务访问其他 Web api 和网页

azure-logic-apps - 逻辑应用程序 - JSON 对象的操作顺序 "Data operations - Select"?

azure - 如何创建具有输入数组的 Azure 函数应用程序(已计划)

azure - 图形 token 没有范围,同时尝试让 Azure 函数与 Excel 输出一起使用