你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
有关定义性能目标的建议
适用于此 Azure Well-Architected 框架性能效率清单建议:
PE:01 | 定义性能目标。 性能目标应该是与工作负载要求相关的数值。 应为所有工作负荷流实现性能目标。 |
---|
本指南介绍有关建立和公开性能目标的建议。 性能目标是定义性能目标的指标。 这些指标表示为单个数值或数值范围。 它们是清晰而具体的指标,可推动持续改进。 性能目标是改进的数字基础,可帮助团队将工作与特定目标保持一致。 如果没有明确的性能目标,团队可能会缺乏焦点,并且对性能问题缺乏责任。 通过设置性能目标,团队可以朝着特定目标努力,并推动持续改进。
定义
术语 | 定义 |
---|---|
数据流 | 系统内或系统之间的数据移动。 |
依赖项 | 工作负荷所依赖的组件。 |
流向 | 在工作负荷中,是执行特定函数的一系列操作。 它涉及数据移动和工作负载组件之间的进程运行。 |
指标 | 定期收集的数值。 指标描述特定时间系统的某些方面。 |
性能目标 | 定义性能目标的指标。 这些指标表示为单个数值或数值范围。 |
用户流 | 用户在应用程序或系统中执行的操作的路径或序列。 |
工作流 | 工作负荷为完成任务而运行的步骤序列。 |
关键设计策略
建立性能目标是实现工作负载性能效率的重要步骤。 性能目标定义了工作负载所需的性能级别,并帮助你衡量其实现这些目标的有效性。 性能目标提供了衡量和比较工作负载效率的基准。 此基准可帮助你突出显示改进领域。 这些目标还使任务与组织的目标保持一致,并增强业务成果。 此外,性能目标还提供资源分配方面的指导,帮助你确保工作负载能够适应不同的需求,同时保持最佳性能。
尽早设置性能目标
在部署工作负载之前设置性能目标。 对于设计中的工作负荷,性能目标需要研究。 进行市场调查、竞争分析和调查,以生成性能目标范围。 对于没有性能目标的生产工作负荷,请使用生产数据和客户反馈来建立性能目标。
确定性能要求
确定性能要求是确定对应用程序至关重要的基本性能指标,例如响应时间、吞吐量和延迟。 将这些性能目标与组织的业务目标保持一致可确保工作负载满足所需的标准,无论是一流的还是普通产品。 例如,可能旨在缩短响应时间、提高吞吐量速率或优化资源使用。
设置性能目标时,请务必使组织的目标与用户群的不同需求保持一致。 用户最终决定性能的成功,强调需要使性能目标与其期望保持一致。 这种平衡可确保性能目标捕获预期的用户体验和工作负载的整体效率。 若要全面衡量和优化工作负载性能,应考虑为以下列表设置性能目标:
单个组件:单个组件是工作负载的单独单元或段,每个组件都有不同的性能属性和需求。
用户流:这些路径绘制了用户如何操纵工作负载,并确保其流动性直接增强用户体验。
工作流:定义内部流程的工作流旨在实现特定结果,并通常决定运营效率。
数据流:数据流是指工作负载中数据的移动和交互,有助于识别潜在的低效或瓶颈。
外部依赖项:外部依赖项是主工作负载之外的元素, (集成的第三方服务或工具) ,可能会显著影响性能。
缩放单位:缩放单元与工作负载的可缩放段相关。 确保负载增加下的可靠性能至关重要,尤其是在增长方案中。
技术级别:技术级别是直接性能指标,例如 API 访问速度、数据库操作延迟和潜在的网络延迟。
业务事务:业务事务表示端到端用户操作,例如完成购买或预订服务,其无缝执行直接关系到用户满意度。
工作负载全部增加:此整体指标概述了包括工作负载的所有组件和方面的集体性能。
确定关键指标
确定关键性能指标涉及确定跟踪实现工作负载性能目标进度的基本度量。 此标识提供了一种可量化的方式来衡量和提高性能效率。 确定要关注的关键指标时,请考虑与可用性、容量和响应时间相关的指标:
可用性:错误率是可用性性能指标。 错误率表示一段时间内失败请求的百分比。 错误率的常见目标是 0.1% 的请求。
容量:吞吐量和并发是示例容量指标。 吞吐量是指在给定时间段内处理特定数量的事务的能力。 例如,应用程序可能需要每月维持 1 亿个事务。 并发是同时用户或操作的度量值。
响应时间: 延迟和加载时间是常见的响应时间指标。 延迟是指响应请求所需的时间 (200 毫秒) 。 加载时间是应用程序或网页交互所需的时间。 常见目标是 99% 的登录请求完成时间不到 1 秒。
设置特定目标
确定关键指标后,需要为每个指标指定性能目标或阈值。 性能目标应是可衡量的、现实的,并与工作负载目标保持一致。 例如,可以将目标响应时间设置为小于 500 毫秒 (毫秒) 或目标错误率小于 1%。 避免对性能进行定性评估,例如 快速 或 慢速。 通过使用数字目标,可以客观地评估一段时间内的性能。 设置特定性能目标时,请考虑以下建议:
考虑客户:设置性能目标时,采用以客户为中心的观点。 将客户视为性能的最终判断者,有助于确保性能目标与客户期望保持一致。 这种一致性涉及考虑组织目标和客户群的不同要求。 集成这两个方面后,可以定制性能目标,以反映所需的客户体验和整体工作负载有效性。 通过定义考虑客户期望的性能目标,可以努力提供高质量的客户体验并满足客户的需求。
使用百分位数:百分位数(如 P99、P95 和 P50)是表示性能评估结果的行业标准。 百分位数是指示数字包含的数据量的度量值。 例如,P99 涵盖 99% 的数据。 使用百分位数而不是简单的平均值来更全面地了解工作负载性能。 若要测量百分位数,请收集一段时间内的性能数据,通常使用监视工具或日志记录机制。 然后分析此数据以确定不同百分位数的响应时间值。
记录并公开性能目标
记录和公开性能目标是在集中位置记录所有性能目标。 满足性能目标是开发和运营团队之间的共同责任。 若要确保工作负荷始终满足或超过这些目标,请为团队提供信息和访问权限以采取措施。 若要记录和公开性能目标,请考虑以下建议:
文档性能目标:记录所有性能目标。 确保所有性能目标都记录在一个集中的位置,开发和运营团队都可以轻松访问。 它促进一致性,并有助于实时决策。
公开性能目标:所有负责任的团队都应能够从性能目标查看和创建可操作的任务。 使用信息辐射器(如仪表板和报表)使性能目标易于访问。
使其可操作:文档和信息辐射器应建议明确的后续步骤。 例如,错误增加可能会提示立即检查,或者始终满足目标可能建议重新评估该基准。
评估客户反馈
评估客户反馈涉及积极寻找和分析客户的响应和建议。 主动收集和分析客户反馈可提供对其需求和期望的宝贵见解。 定期沟通有助于根据不断变化的偏好和技术趋势调整性能目标。 关注客户需求意味着工作负载不仅符合技术基准,而且还要进行持续优化。 这种方法强调客户满意度,可确保工作负载长期保持相关性和成功。
Azure 简化
设置性能目标:Azure 顾问提供 可告知性能 目标的性能建议。
Azure Monitor 是一项全堆栈监视服务,提供一组完整的功能来监视 Azure 资源并衡量性能目标。 它收集平台指标并提供随时可用的仪表板。 它允许基于指标配置警报。 它还存储并关联指标,以确保单一事实来源。
相关链接
性能效率清单
请参阅完整的建议集。