费用计算 | AWS Serverless Application Repository 是如何计费的?


  基本概述

AWS Serverless Application Repository(SAR)是亚马逊云科技提供的托管服务,旨在简化无服务器应用的存储、发现与部署流程。开发者可通过该平台快速获取由 AWS 或社区开源的预构建应用模板(如数据处理、API 后端、日志监控等),直接部署至 AWS 环境,无需手动编写基础设施代码。SAR 支持公有与私有共享模式,公有应用需遵循开源协议(如 MIT)并公开源码,私有应用则仅限组织内部使用。其核心价值在于加速开发流程,降低重复造轮子的成本,同时通过 AWS SAM(Serverless Application Model)模板实现资源定义的标准化。


  定价模型

SAR 本身不收取额外费用,用户仅需为部署应用所消耗的 AWS 底层资源付费。这种模式与 AWS 其他托管服务(如 Elastic Beanstalk)一致,遵循“按需使用”原则,费用与资源实际用量直接挂钩。例如,若部署的应用依赖 Lambda 函数、DynamoDB 表或 S3存储桶,则仅需支付这些资源的费用,而无需为 SAR 的存储或访问功能付费。


  费用构成

计算资源(Lambda 函数)
按调用次数与执行时长计费:Lambda 费用由两部分组成:
调用次数:每百万次请求费用因区域而异(如东京区域为$0.20/百万次)。
执行时长:按 GB- 秒计算,例如128MB 内存的函数执行100万次(每次100ms)的费用为0.00001667×100万≈0.17。
示例:一个处理图片的 Lambda 函数,每月调用100万次,每次执行200ms(256MB 内存),费用约为0.34(调用)+0.34(时长) = $0.68/月。
存储资源(S3 存储桶)
按存储量与数据传输计费:
存储量:标准存储价格为$0.023/GB/月。
数据传输:出站流量按 GB 计费(如跨区域传输为$0.09/GB)。
示例:存储100GB 应用日志,月费用为2.3;若每月传输50GB 数据至其他区域,额外费用为4.5,总计$6.8/月。
数据库资源(DynamoDB 表)
按读写容量与存储量计费:
读写容量:按每百万次写入/读取请求计费(如按需模式每百万次写入为$1.25)。
存储量:$0.25/GB/月。
示例:一个每月处理100万次写入请求、存储10GB 数据的 DynamoDB 表,费用为
1.25(写入)+2.5(存储) = $3.75/月。
附加服务
API Gateway:若应用通过 API Gateway 暴露接口,需支付请求处理费用(如每百万次请求$3.5)。
CloudWatch 日志:按日志摄入量计费(每 GB $0.5)。


  计费示例

部署一个基于 SAR 的实时数据处理应用,包含以下组件:
Lambda 函数:512MB 内存,每月调用500万次,每次执行300ms。
S3 存储桶:存储200GB 原始数据,每月出站传输100GB。
DynamoDB 表:每月处理500万次写入请求,存储20GB 数据。

费用计算:
Lambda 函数:
调用费用:500万次 × 0.20/百万次=1.00。
执行时长费用:500万次 × (0.3秒 × 512MB / 1024) × 0.00001667≈1.25。
小计:$2.25。
S3 存储桶:
存储费用:200GB × 0.023/GB/月=4.6。
数据传输费用:100GB × 0.09/GB=9.0。
小计:$13.6。
DynamoDB 表:
写入费用:500万次 × 1.25/百万次=6.25。
存储费用:20GB × 0.25/GB/月=5.0。
小计:$11.25。
总费用:
2.25(Lambda)+13.6(S3) + 11.25(DynamoDB)= $27.1/月