选择“ azure函数”相对于“ http请求”操作有性能优势吗?

l--*_*''' 8 azure-logic-apps azure-functions

选择azure functionvs http request动作对性能有好处吗?

向您的逻辑应用程序添加azure函数的方法似乎有两种。

第一种方法是简单地触发Http Request:

在此处输入图片说明

或者,我们可以选择Azure function作为操作:

在此处输入图片说明

选择azure functionvs http request动作对性能有好处吗?

小智 5

无法控制azure functions调用的速度如何,其性能与所选计划无关。MSDN的《了解无服务器冷启动》和此博客文章解释了在调用最近未调用的Azure函数时会有2到10秒的开销。启动时间取决于所编写的语言及其依赖项。使用专用计划运行天蓝色功能可以避免此问题。

一个http request只有做一个HTTP调用的缺点。在调用API且不需要大量处理响应时,此操作是可取的。

应避免azure function使用调用API,http request因为这会导致两次操作的费用。直接选择时,大概不会通过简单的HTTP调用azure函数。


ARG*_*Geo 5

当我们谈论性能时,Azure Function我们必须在以下问题的背景下讨论它们:高CPU/memory消耗、port/消耗、 /outbound_socket数量等。spawned_threadspending requests

您需要记住一件重要的事情:在创建函数应用程序时,开发人员应该记住这样一个事实:一旦函数创建,就不可能从 移动Consumption Plan到 到App Service Plan(反之亦然)。但是,如果他删除功能应用程序并在其他类型的托管计划上重新创建它,那么出于显而易见的原因,这是可能的。开发人员设计功能应用程序时应避免执行占用大量 CPU 和内存的密集型任务、产生大量线程、打开大量出站套接字连接等。

提高 Azure Functions 性能的最佳实践是:

  • 避免长时间运行的函数
  • 使用存储队列进行跨功能通信
  • 将函数编写为无状态
  • 编写防御函数
  • 尽可能重用与外部资源的连接
  • 使用异步代码并避免阻塞调用

一旦应用程序使用量超过这些限制,消息的处理速率就会降低,然后规模控制器会添加一个新的机器实例,并分配负载以保持处理速率。但是,添加新实例大约需要 10 秒,然后事件的负载平衡就会开始。然而,当添加新实例时,处理速度会加快,在 20-30 分钟内,高负载(10,000 个请求)将得到解决。

Conclusion:Azure Functions 的性能取决于多种因素。

希望这可以帮助。