Skip to content
返回云服务

Azure Functions serverless

事件驱动 serverless — HTTP、定时、Cosmos DB、Service Bus、Event Grid 触发。Premium 计划支持 VNet。

Azure进阶

为什么

Functions 事件运行无服务器 — HTTP、定时、Cosmos DB、Service Bus。消费:按执行付费、100 万免费/月。Premium:VNet、无冷启动、预热实例。

何时使用

事件驱动时用:webhook、定时任务、DB 触发。Web 应用用 App Service、容器用 AKS。

如何做

1. 创建 — func new --template "HTTP Trigger" --name MyFn 2. 触发器 — HTTP、Timer、Cosmos DB、Service Bus、Event Grid、Blob 3. 绑定 — 声明式输入/输出、更少代码 4. 消费 — 按执行付费、缩到零、冷启动 5. Premium — 预热、VNet、无冷启动、更高成本 6. Durable Functions — 编排、有状态工作流 7. 部署 — func azure functionapp publish、或 zip 部署 8. 代理 — API 网关轻量、路由到多函数

示例

# HTTP 触发(Node v4 模型) import { app } from "@azure/functions"; app.http("hello", { methods: ["GET"], handler: async (req, ctx) => { return { body: { hello: "world" } }; }, }); # 定时触发 — 每日 2 点 app.timer("daily", { schedule: "0 0 2 * * *", handler: async (timer, ctx) => { await runDailyJob(); }, }); # 部署 func azure functionapp publish my-fn-app

常见问题

  • ⚠消费层冷启动 3-5 秒 — 延迟敏感用 Premium
  • ⚠VNet 仅 Premium/App Service 计划 — 消费层无法访问内部
  • ⚠绑定配置冗长 — v4 模型更简、优先于 v3

最佳实践

  • ✓用 v4 编程模型 — 更干净、异步、TypeScript 优先
  • ✓生产用 Premium 计划 — 预热、VNet、无冷启动
  • ✓编排用 Durable Functions — 有状态工作流、重试、定时

常见问题解答

什么是Azure Functions serverless?它解决什么问题?

事件驱动 serverless — HTTP、定时、Cosmos DB、Service Bus、Event Grid 触发。Premium 计划支持 VNet。 它可帮助开发者在不自建基础设施的前提下完成部署、存储与扩展,是云服务选型的核心参考。

如何在 5 分钟内上手Azure Functions serverless?

两步即可跑通:① 创建 — func new --template "HTTP Trigger" --name MyFn;② 触发器 — HTTP、Timer、Cosmos DB、Service Bus、Event Grid、Blob。建议先用免费套餐验证流程,再接入生产环境。

Azure Functions serverless 最容易踩的坑是什么?

最高频的问题是:消费层冷启动 3-5 秒 — 延迟敏感用 Premium。建议在上线前用 checklist 逐项核对,并在 CI 中加入策略与配置扫描。

Azure Functions serverless 的最佳实践有哪些?

Azure Functions serverless 的最佳实践包括:用 v4 编程模型 — 更干净、异步、TypeScript 优先;生产用 Premium 计划 — 预热、VNet、无冷启动;编排用 Durable Functions — 有状态工作流、重试、定时。其中首条「用 v4 编程模型 — 更干净、异步、TypeScript 优先」应作为团队默认规范写入 IaC 模板。

Azure Functions serverless 如何控制成本与避免账单意外?

三招防超支:① 为所有资源打 env/team 标签并启用账单告警;② 用预算阈值触发 Slack/邮件通知;③ 定期用 Cost Explorer 审查闲置资源并清理。Azure Functions serverless 多数提供免费套餐,先在免费额度内验证再放量。