性能效率

性能效率 支柱包括 高效利用计算资源来满足系统要求,并随着需求变化和技术演进保持这种效率的能力。

性能效率支柱概述了设计原则、最佳实践和问题。如需有关具体实施的说明性指导,请参阅性能效率支柱白皮书

设计原则

云中的 性能效率 有 five 项设计原则:

定义

云中的 性能效率 有 four 个最佳实践领域:

采用数据驱动型方法来构建高性能架构。收集架构各方面的数据,从总体设计到资源类型的选择与配置都包括在内。

定期审核您的选择,确保充分利用不断发展的 AWS 云的优势。监控可以确保您随时发现与预期性能的偏差。您可以对您的架构作出权衡以便提高性能,例如使用压缩或缓存,或放宽一致性要求。

最佳实践

选择

针对特定工作负载的最佳解决方案各不相同,而且解决方案通常会结合多种方法。架构完善的工作负载会使用多种解决方案,并且启用各种不同的功能来提高性能。

我们提供多种类型和配置的 AWS 资源,可让您更轻松地找到最能满足您工作负载需求的方法。此外,我们还提供了无法使用本地基础设施轻松实现的选项。例如,Amazon DynamoDB 之类的托管服务可以提供完全托管的 NoSQL 数据库,确保在任何规模下都只会有几毫秒的延迟。

以下问题主要针对 性能效率 的准备阶段。

PERF 1: 如何选择性能最好的架构?

使用数据驱动型方法来为您的架构选择模式和实施方式,获得经济高效的解决方案。AWS 解决方案架构师、AWS 参考架构和 AWS 合作伙伴网络 (APN) 合作伙伴可以根据自身的专业知识帮助您选择合适的架构,不过将需要通过基准测试或负载测试提取的数据来优化您的架构。

您的架构可能会结合多种不同的架构方法(例如事件驱动、ETL 或管道)。架构的实现将使用各种专门用于优化架构性能的 AWS 服务。在接下来的章节中,我们会介绍您应该考虑的四种主要资源类型:计算、存储、数据库和网络。

计算

选择满足您的要求和性能需求并具有出色成本效益的计算资源,将使您能够利用同等数量的资源获取更多收益。在评估计算选项时,请注意您的工作负载性能需求和成本要求,并以此做出明智的决策。

TRANSLATION REQUIRED

以下问题主要针对 性能效率 的准备阶段。

PERF 2: 如何选择计算解决方案?

在设计如何使用计算资源时,您应该利用弹性机制来确保自己具有充足的容量,以便在需求发生变化时保持性能水平。

存储

云存储是云计算的关键组成部分,它存储着工作负载所使用的信息。云存储通常比传统的本地存储系统更加安全可靠且可扩展。从对象、数据块和文件存储服务以及您工作负载的云数据迁移选项中进行选择。

TRANSLATION REQUIRED

以下问题主要针对 性能效率 的准备阶段。

PERF 3: 如何选择存储解决方案?

选择存储解决方案时,确保它与您的访问模式保持一致对于实现预期性能至关重要。

数据库

云可以提供专用数据库服务,解决您的工作负载所带来的各种问题。您可以从许多专用数据库引擎(包括关系、键值、文档、内存、图形、时间序列和分类账数据库)中进行选择。通过选择最佳数据库来解决特定问题或一组问题,您可以摆脱限制性的“一刀切”整体式数据库,并专注于构建应用程序以满足客户的性能需求。

在 AWS 中,您可以从多个专用数据库引擎(包括关系、键值、文档、内存、图形、时间序列和分类账数据库)中进行选择。有了 AWS 数据库,您再也无需担心数据库管理任务,例如数据库预置、修补、设置、配置、备份或恢复。AWS 会通过自修复存储和自动扩展功能持续监控您的集群,以使您的工作负载保持正常运行,这样您就可以专注于更高价值的应用程序开发。

以下问题主要针对 性能效率 的准备阶段。

PERF 4: 如何选择数据库解决方案?

TRANSLATION REQUIRED

网络

由于网络位于所有工作负载组件之间,因此可能会对工作负载性能和行为产生巨大的正面和负面影响。还有一些严重依赖网络性能的工作负载,例如,对于高性能计算 (HPC),深入了解网络对于提高群集性能很重要。您必须确定带宽、延迟、抖动和吞吐量方面的工作负载要求。

在 AWS 中,网络资源以虚拟化形式存在,而且支持多种类型和配置。这让您可以更轻松地找到贴合您需求的网络方案。AWS 提供多种产品功能(例如增强联网、Amazon EBS 优化实例、Amazon S3 Transfer Acceleration 和动态 Amazon CloudFront)来优化网络流量。AWS 还提供多种联网功能(例如 Amazon Route 53 的基于延迟的路由、Amazon VPC 终端节点、AWS Direct Connect 和 AWS Global Accelerator)来减少网络距离或抖动。

以下问题主要针对 性能效率 的准备阶段。

PERF 5: 如何配置联网解决方案?

您必须考虑部署网络的位置,您可以选择将资源放置在靠近使用地点的位置,以缩短距离。使用网络指标来随着工作负载的发展对网络配置进行更改。利用区域、置放群组和边缘服务,您可以显著提高性能。基于云的网络可以快速重建或修改,因此有必要随着时间的推移改进网络架构,以保持性能效率。

审核

TRANSLATION REQUIRED

利用由客户需求驱动的 AWS 持续创新。我们会定期发布新的区域、边缘站点、服务和功能。这些发布内容都可以明显提高架构的性能效率。

以下问题主要针对 性能效率 的准备阶段。

PERF 6: 如何改进工作负载以便利用新的版本?

TRANSLATION REQUIRED

监控

实施工作负载后,必须监控其性能,以便在问题对客户造成影响之前进行补救。您应该使用监控指标,确保系统在指标超出阈值时发出告警。

Amazon CloudWatch 是一项监控和可观测性服务,可为您提供相关数据和切实见解,以监控工作负载、响应系统范围的性能变化、优化资源利用率,并在统一视图中查看运行状况。CloudWatch 以日志、指标和事件的形式从在 AWS 和本地服务器上运行的工作负载中收集监控和运营数据。AWS X-Ray 可以帮助开发人员分析和调试分布式生产应用程序。借助 AWS X-Ray,您可以了解应用程序的执行情况,发现性能问题,并找到根本原因。使用这些分析结果,您可以快速做出反应,保证工作负载顺畅运行。

以下问题主要针对 性能效率 的准备阶段。

PERF 7: 如何监控资源以确保其性能?

有效监控解决方案的关键是确保不会看到误报。自动触发器可以避免人为错误,并且可以缩短解决问题的用时。请安排时间在生产环境中执行模拟以测试告警解决方案,确保它可以正确识别各种问题。

权衡

在架构解决方案时,需要权衡各种因素才能确保获得最佳方案。根据具体情况,您可以在一致性、持久性和空间与时间或延迟之间进行权衡,以便实现更高的性能。

使用 AWS,您可以在几分钟内实现全球化部署,并可在世界范围内的多个位置部署资源,从而缩短与最终用户的距离。您还可以将只读副本动态添加到信息存储系统(例如数据库系统),以减少主数据库的负载。

以下问题主要针对 性能效率 的准备阶段。

PERF 8: 如何使用权衡机制来提高性能?

对工作负载进行更改时,需要收集并评估各项指标,以确定更改产生的影响。衡量对系统和最终用户的影响,以便了解权衡机制如何影响工作负载。使用负载测试等系统的方法来确定权衡机制是否可以提高性能。

资源

请参阅以下资源,详细了解有关 性能效率 的最佳实践。

Performance Efficiency Pillar
Amazon S3 Performance Optimization
Amazon EBS Volume Performance
AWS re:Invent 2019: Amazon EC2 foundations (CMP211-R2)
AWS re:Invent 2019: Leadership session: Storage state of the union (STG201-L)
AWS re:Invent 2019: Leadership session: AWS purpose-built databases (DAT209-L)
AWS re:Invent 2019: Connectivity to AWS and hybrid AWS network architectures (NET317-R1)
AWS re:Invent 2019: Powering next-gen Amazon EC2: Deep dive into the Nitro system (CMP303-R2)
AWS re:Invent 2019: Scaling up to your first 10 million users (ARC211-R)