COST05-BP05 选择此工作负载的组件,以便根据组织的优先事项优化成本 - AWS Well-Architected Framework

COST05-BP05 选择此工作负载的组件,以便根据组织的优先事项优化成本

为工作负载选择所有组件时考虑成本因素。这包括使用应用程序级别的托管服务或无服务器服务、容器或事件驱动型架构,以降低整体成本。使用开源软件、没有许可证费用的软件或替代方案来尽可能减少许可证成本,从而减少开支。

未建立这种最佳实践的情况下暴露的风险等级:

实施指导

在选择所有组件时考虑服务和选项的成本。这包括使用应用程序级别的托管服务,例如 Amazon Relational Database Service (Amazon RDS)、 Amazon DynamoDBAmazon Simple Notification Service (Amazon SNS)和 Amazon Simple Email Service (Amazon SES),来降低组织的总体成本。

使用无服务器服务和容器进行计算,例如用于静态网站的 AWS LambdaAmazon Simple Storage Service (Amazon S3)。尽可能将您的应用程序容器化,并使用 AWS 托管的容器服务,例如 Amazon Elastic Container Service (Amazon ECS)或 Amazon Elastic Kubernetes Service (Amazon EKS)。

使用开源软件或没有许可证费用的软件,尽可能减少许可证成本,例如,对计算工作负载使用 Amazon Linux 或将数据库迁移到 Amazon Aurora。

您可以使用无服务器或应用程序级服务,如 LambdaAmazon Simple Queue Service (Amazon SQS)Amazon SNSAmazon SES。这些服务剔除了管理资源的需要,并提供代码执行、排队服务和消息传递功能。另一个好处是,这些服务可以根据使用量扩展性能和成本,从而实现有效的成本分配和归属。

还可以通过无服务器服务来使用 事件驱动型架构 。事件驱动型架构是推送式的,所以当事件在路由器中出现时,一切都按需发生。这样,您就不会为检查事件的连续轮询而付费。这意味着更少的网络带宽消耗、更低的 CPU 使用率、更少的闲置实例集容量,以及更少的 SSL/TLS 握手次数。

有关无服务器的更多信息,请参阅 架构完善的无服务器应用程序剖析白皮书。

实施步骤

  • 选择每个服务以优化成本: 使用经过优先级排序的列表和分析,选择最符合组织优先事项的每个选项。与其增加容量来满足需求,不如考虑其他可以提供更高性价比的选项。例如,您需要审查您的数据库在 AWS 上的预期流量,并考虑增加实例大小或使用 Amazon ElastiCache 服务(Redis 或 Memcached),来为您的数据库提供缓存机制。

  • 评估事件驱动型架构: 通过使用无服务器架构,您还可以为基于微服务的分布式应用程序构建事件驱动型架构,这有助于您构建可扩展、有弹性、敏捷且具有成本效益的解决方案。

资源

相关文档:

相关示例: