通过 EC2 与 RDS Parking 将 AWS 账单削减 50–75%
Source: Dev.to

降低 AWS 计算费用的最佳实践
摘要
云计算支出是 AWS 基础设施成本中最显眼且最易控制的组成部分之一,然而仍有许多组织为闲置资源付费。出于便利考虑,开发、测试、UAT、QA、沙箱和演示环境常常 24/7 运行,即使它们只在工作时间需要。自动在非工作时间停止(“停放”)Amazon EC2 和 Amazon RDS 等资源是一种直接的 AWS 成本优化技术,能够在不更改应用程序或开发者工作流的前提下实现 50‑75 % 的节省。
本文阐述了停放的重要性,展示了汇总的成本数据,说明了 EC2 与 RDS 的适用范围,概述了一种简易的架构模式,并重点指出在何种情况下停放能够产生最大价值——尤其是当非生产环境可以在工作日的非工作时间以及整个周末关闭时。
为什么停车计算很重要?
空闲计算是云支出浪费最常见的来源之一。默认情况下,Amazon EC2 和 Amazon RDS 会 24 × 7 运行,除非手动停止,因此组织经常为不需要的运行时间付费。AWS 针对开发环境的参考架构显示,将计算调度为工作日使用可以将运行时间从 168 hours/week 降至约 45 hours/week,从而实现约 ~70 % 的计算成本节省。
空闲计算通常出现在:
- Low environments (Dev / QA / UAT / Stage)
- Demo, sandbox, and training environments
Business reality: non‑production environments rarely need 24 × 7 uptime, making them ideal candidates for parking.
成本影响的停车
要说明影响,考虑两种常见资源类型:EC2 和 RDS。
EC2 示例
| 指标 | 始终开启 | 停放(周一–周五,上午 9 点–下午 6 点) |
|---|---|---|
| 小时/周 | 168 | ~45 |
| 每月费用 | $61.85 | $16.55 |
| 节省 | — | ~73 % |
关键上下文
- 实例:
c5.large - 按需价格:约 $0.085 /小时(美国地区 – 具体定价因地区而异)
RDS 示例
Amazon RDS 也可以对包括 PostgreSQL、MySQL 和 MariaDB 在内的多种引擎进行停放(启动/停止)。
注意: 如果停止超过 7 天,RDS 会自动重新启动(来源)。
| 指标 | 始终开启 | 停放(周一–周五,上午 9 点–下午 6 点) |
|---|---|---|
| 每月计算费用 | $48.71 | $13.25 |
| 存储 | 未变更 | 未变更 |
| 节省 | — | ~73 %(计算) |
关键上下文
- 实例:
db.t3.medium - 按需价格:约 $0.067 /小时(美国地区 – 具体定价因地区而异)
小型堆栈示例
| 资源 | 始终开启 | 停放 |
|---|---|---|
EC2(10 × c5.large) | ~$618.50 | ~$165.50 |
RDS 计算(3 × db.t3.medium) | ~$146.13 | ~$39.75 |
| RDS 存储(3 ×) | ~$30.00 | ~$30.00 |
| 总计 | $794.63 | $235.25 |
- 每月节省: ~$559.38(~70 %)
- 年度节省: ~$6,700 / 年
在 3–5 个环境 中扩展,停放每年可节省 数万美元,且工程工作量极小!
停车(资源保留)何时有意义
Parking delivers the most value when environments are:
- 非生产 – Dev / QA / UAT / Stage / Demo / Sandbox
- 业务时间驱动 – Teams working 08:00–19:00, Mon–Fri (no weekend activity)
Many organizations also have multiple non‑production environments per microservice, multiplying waste if left running 24 × 7.
架构模式
在高层次上,解决方案使用 AWS 调度和资源标签,自动停止和启动非生产计算资源,无需人工干预。

典型模式
- Amazon EventBridge 为启动/停止窗口定义基于 cron 的调度。
- EventBridge 在这些窗口期间调用 AWS Lambda。
- Lambda 使用标签(例如
Parking=Enabled、Env=Dev|QA|Stage)来识别资源。 - Lambda 在非工作时间停止 EC2 和 RDS,在工作时间启动它们。
无需实例 ID 或手动列表——系统完全基于 标签驱动。
这使参与保持灵活:团队通过标签 自行加入,资源会根据定义的调度自动开关。
结论
在非工作时间对 AWS 计算资源(如 Amazon EC2 和 Amazon RDS)进行“停放”是最简单且影响最大的 AWS 成本优化 技术之一。通过消除闲置计算开支,可实现 50–75 % 的节省,尤其是在仅需在工作日业务时间可用的非生产环境中。利用计划触发器、标签以及轻量级 Lambda 自动化,组织可以以最小的工程投入实现显著的成本降低。
自动化可以在极低的运维开销下实施,并且不会影响开发人员的生产力或应用性能。如果您已经在使用 Terraform、CI/CD 或内部平台,请集成基于标签的停放,使 成本效率 成为整个工程组织的常驻能力。
