Azure Functions 开发实践
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/azure-functions。
技能介绍
要解决什么问题
在 Azure Functions 上写无服务器函数时,选型与运行时细节很容易踩坑:.NET 该用进程内还是 Isolated Worker、Node/Python 该跟哪一代编程模型、Durable Functions 里怎么写异步、消费计划下的超时与冷启动如何配置。本技能把官方推荐模式、明确反模式与常见 Issue 对照表整理成可检索的决策与排错线索,而不是泛泛的「云函数入门」。
技能如何组织内容
推荐模式分三条线说明执行模型:
- Isolated Worker Model (.NET):基于进程隔离的现代 .NET 执行方式,适合新项目。
- Node.js v4 Programming Model:以代码为中心、面向 TypeScript/JavaScript 的当前模型。
- Python v2 Programming Model:基于装饰器的函数定义与绑定方式。
反模式单独列出应避免的写法,例如阻塞式异步、每次请求 new HttpClient、新项目仍用进程内模型。
易错点表按严重程度给出方向性解法标题(如 Durable 异步模式、IHttpClientFactory、始终 async/await、消费计划最大超时、Application Insights、扩展捆绑包、预热触发器等),便于对照日志与配置逐项排查。
适用边界与注意
资料聚焦运行时模型选择与工程化习惯,不替代 Azure 门户/CLI 的部署与 IAM 配置说明。表中「Solution」多为章节标题级指引,具体代码与版本号需以当前 Azure Functions 文档 为准;扩展捆绑包与运行时版本不匹配仍是线上最常见一类故障,改模型或升级前应先核对 host 与 bundle 约束。
使用场景
- 新项目要在 Azure 上选型 .NET 隔离工作进程还是进程内模型,并统一团队编码约定
- Node/TypeScript 函数要从旧编程模型迁移到 v4,需要对照绑定与入口写法
- 消费计划上的函数频繁超时或冷启动慢,要核对最大超时、预热触发与扩展捆绑包版本
- Durable Functions 编排里出现阻塞或 HttpClient 泄漏,要按表里的异步与 IHttpClientFactory 方向改代码
适合人员
- 负责 C# Azure Functions 的后端,线上因扩展捆绑包或运行时版本不匹配导致部署失败需排错
- 在 Azure 上规划新的事件驱动微服务的技术负责人,要对比 Node v4、Python v2 与 .NET 隔离模型
- 运维或 SRE 要给函数应用配 Application Insights 并解释消费计划下的超时与冷启动现象
- 从进程内模型升级或新建隔离工作进程函数应用的 .NET 开发者,需避免反模式里的阻塞异步与每次请求新建 HttpClient