You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中是否需将Azure Activity Function定义为异步函数?

Azure Durable Activity Function是否应定义为异步函数?

结论:应该将基于activityTrigger的Azure Durable Activity Function定义为异步函数,原因如下:

  • 提升资源利用率:Azure Functions Python运行时基于asyncio实现异步并发模型,异步Activity函数在执行IO密集型操作(如数据库查询、外部API调用)时,不会阻塞Worker线程,线程可以转而处理其他任务,大幅提升整体的并发处理能力和资源利用率。
  • 适配Durable编排模型:虽然编排器通过yield调用Activity函数,但异步Activity的执行不会额外占用Worker资源——编排器本身是状态机模式,等待Activity结果时会挂起,而异步Activity的IO等待阶段不占用线程,能减少系统资源消耗。
  • 遵循官方最佳实践:官方明确建议Python Functions使用异步模式以优化性能,Activity函数作为Functions的核心组件,遵循同一标准能保持代码风格统一,降低后续维护和扩展的成本,比如后续接入异步服务时无需重构代码结构。

注意:如果你的Activity函数以CPU密集型操作为主,异步模式的收益会很有限,甚至可能因为asyncio的调度开销导致性能下降,这种场景下可以选择同步函数。但云函数场景中绝大多数是IO密集型任务,异步模式更适用。

内容的提问来源于stack exchange,提问作者Jan Kowalik

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 11:12:04