如何衡量生产工作负载中Serverless(含FaaS/托管服务)的占比?
如何衡量生产工作负载中Serverless的占比?
以下是几种实用的衡量方法,覆盖不同维度,能有效佐证Serverless的采用趋势:
1. 资源部署维度统计
- 云服务商控制台直接查询:直接在AWS、Azure、GCP等云平台控制台中,分别统计Serverless资源(如Lambda函数、Function Apps、Cloud Run服务、Fargate实例)的数量,再对比传统基础设施(EC2虚拟机、自建K8s节点、物理服务器)的资源数量,计算两者占比。
- IaC配置审计:扫描Terraform、CloudFormation、ARM模板等基础设施即代码文件,统计其中Serverless资源定义(如
aws_lambda_function、azurerm_function_app)与传统资源定义(如aws_ec2_instance)的数量或代码行数占比,能反映部署层面的采用程度。
2. 运行时负载维度统计
- 监控工具指标聚合:你提到的New Relic、Datadog这类工具,除统计服务数量外,还可聚合更能体现实际负载的指标:
- 计算Serverless服务处理的请求量占总请求量的比例
- 统计Serverless资源的CPU/内存使用率占整体负载的比例
- 聚合Serverless任务的执行时长占总运行时长的比例
这些指标比单纯的服务数量更能反映Serverless在生产负载中的实际贡献。
- 流量入口分析:从API网关、负载均衡器的访问日志中,统计路由到Serverless服务的流量占比,比如AWS API Gateway中指向Lambda的请求数占总请求数的比例,能直接体现流量层面的Serverless占比。
3. 成本维度统计
- 云账单分析:导出云服务商的账单数据,按服务类型分组,统计Serverless相关服务(Lambda、Fargate、Cloud Functions、托管数据库/缓存等)的费用占总云服务费用的比例。这个维度数据准确,无需额外集成监控工具,且成本占比能直接反映业务对Serverless的依赖程度。
关于你提到的监控工具统计服务数量的补充
这个思路是可行的,但需要确保所有生产服务都已接入监控平台。如果存在未集成的服务,可以结合云控制台的资源清单进行补全,避免因遗漏导致统计结果偏差。
内容的提问来源于stack exchange,提问作者NSS
相关产品推荐
相关产品推荐

