性能效率
作用:
(1)性能效率支柱是指能够有效地使用计算资源来满足系统要求,并在需求发生变化和技术改进时保持此效率。
(2)性能效率支柱提供了用于管理生产环境的最佳实践。架构最佳实践侧重于在云中设计和运营可靠、安全、高效、经济实惠且可持续的工作负载。
性能效率的五大设计原则:
1.普及先进技术:
通过将复杂的任务委托给云供应商,使团队更顺利地实施先进技术。与其让您的 IT 团队去了解如何掌握和运行新技术,不如考虑将这项技术作为服务使用。
例如,NoSQL 数据库、媒体转码和机器学习均是需要专业知识的技术。在云中,这些技术成为团队可以利用的服务,与此同时,团队可以专注于产品开发,而不必关注资源预置和管理。
2.数分钟内实现全球化部署:
在全球多个 AWS 区域部署工作负载,从而以最低的成本为您的客户提供更低的延迟和更好的体验。
3.使用无服务器架构:
无服务器架构无需针对传统计算活动运行和维护物理服务器。例如,无服务器存储服务充当静态网站(无需使用 Web 服务器),而事件服务可以托管代码。这样既消除了管理物理服务器导致的运行负担,又可以降低事务处理成本,因为托管服务在云级别运行。
4.更频繁地进行试验:
利用虚拟可自动化资源,您可以使用不同类型的实例,存储或配置快速执行比较测试。
5.考虑机械同感:
使用最能与您的目标保持一致的技术方法。例如,在选择数据库或存储方法时考虑数据访问模式。
性能效率有四个最佳实践领域:
1.选择
针对特定工作负载的最佳解决方案各不相同,并且解决方案通常会结合使用多种方法。Well-Architected 的工作负载会使用多种解决方案并启用不同的功能,以便提高性能。
AWS 资源有很多类型和配置,因此您可以找到一个最能满足您的工作负载需求的方法。您还可以找到通过本地部署基础设施无法高效实现的选项。例如,Amazon DynamoDB 等托管服务可以提供完全托管的 NoSQL 数据库,从而在任意规模下实现低于 10 毫秒的延迟。
示例:您的架构可能会结合多种不同的架构方法(例如,事件驱动、ETL 或管道)。实施架构时将会使用专门用于优化架构性能的 AWS 服务。
2.审查
云技术正在迅猛发展,您必须确认工作负载组件在使用最新的技术和方法,以不断提高性能。您必须持续评估和考虑对工作负载组件的更改,以确保满足其性能和成本目标。诸如机器学习和人工智能 (AI) 的新技术可以让您重新构想客户体验,并在所有业务工作负载中进行创新。
在 AWS 获益于由客户需求驱动的持续创新。我们会定期发布新的区域、边缘站点、服务和功能。其中任何一项发布都可以积极地提高架构的性能效率。
性能较低的架构通常是由于缺少或中断性能审查流程造成的。如果您的架构性能较低,实施性能审查流程将能够采用 Deming 的计划-执行-检查-处理 (PDCA) 循环,推动迭代改进。
3.监控
实施架构后,监控其性能,以便在有任何问题影响客户之前进行修复。监控指标应该用于在达到阈值时发出警报。在 AWS 中,监控包括五个明确定义的阶段:
生成 – 监控、指标和阈值的范围
聚合 – 从多个来源创建一个完整的视图
实时处理和警报 – 识别和响应
存储 – 数据管理和保留策略
分析 – 控制面板、报表和见解
4.权衡
在构建解决方案时,请考虑权衡以确保采用最佳方法。您可以根据自身情况,在一致性、持久性和空间与时间或延迟之间进行权衡,从而提供更高的性能。
使用 AWS,您可以在数分钟内实现全球化部署,即在全球多个位置部署资源,从而更接近您的终端用户。 您还可以将只读副本动态添加到数据库系统等信息存储空间中,以减少主数据库上的负载。
AWS 提供缓存解决方案,例如 Amazon ElastiCache(提供内存中数据存储或缓存)和 Amazon CloudFront(将静态内容的副本缓存到距离终端用户更近的位置)。Amazon DynamoDB Accelerator (DAX) 在 Amazon DynamoDB 前面提供一个直读/直写分布式缓存层,支持相同的 API,但为缓存中的实体提供亚毫秒级延迟。
提示:Amazon ElastiCache 是一项由 AWS 提供的完全托管的服务,它兼容 Memcached 和 Redis OSS,能够为现代应用程序提供实时、成本优化的性能,可用性高达 99.99%。
提示:Amazon CloudFront 是 AWS 提供的一项内容分发网络(CDN)服务,旨在加快全球用户对静态和动态 Web 内容的访问速度。 提示:Amazon DynamoDB Accelerator(DAX)是 Amazon DynamoDB 的一项完全托管且高度可用的内存中缓存服务,旨在提升 DynamoDB 的读取性能。
作者:张祉杰