持续性能优化的建议
适用于此 Power Platform Well-Architected 性能效率检查表建议:
PE:10 | 持续优化性能。 重点关注性能随时间推移而下降的组件,例如数据库和网络功能。 |
---|
本指南介绍了持续性能优化的建议。 持续性能优化是持续监控、分析和提高性能效率的过程。 性能优化需要成为工作负载整个生命周期内的持续活动。 工作负载性能可能会随着时间的推移而降低或变得过高。 需要考虑的因素包括使用模式的变化、存储数据的增加、需求、功能和技术债务。
定义
术语 | 定义 |
---|---|
技术债 | 在开发过程中为更快地交付代码而故意采取的低效率、次优设计选择或捷径。 |
生存时间 | 一种设置数据过期时间的机制。 |
关键设计策略
当工作负载容量与实际使用情况保持一致时,即可实现性能效率。 性能优异的工作负载与性能不佳的工作负载一样有问题。 权衡不同。 性能过剩会影响成本优化。 性能不佳会影响用户。 性能效率的关键是随着时间的推移进行监控、调整和测试。 您需要定期查看性能指标并根据需要进行调整,以确保工作负载高效。 需要在实施之前和实施后测试所有更改,以达到性能目标。
培养绩效文化
绩效文化是一种期望持续改进并且团队从生产中学习的环境。 性能优化需要专门的技能。 工作负载团队需要正确的技能和思维方式来优化其绩效,以满足需求的增加和减少。 您还需要分配他们的时间,以支持对出现的性能问题进行必要的监控和修复。 这些团队需要明确的期望。 例如,绩效目标、基线和偏差阈值(可接受的与基线的差距)需要高度可见和社交化。
权衡:持续的性能优化需要一个具有适当技能和时间的团队来发现和修复性能问题。 将人员专供执行会增加运营成本。 如果您的人力资源有限,持续的性能优化可能会占用其他运营任务的时间。
评估新的平台功能
评估新的平台功能包括检查可以提高性能效率的新功能和特性,例如查询数据的优化方式、现代控件或缓存机制。 新的平台功能可以为提高性能效率开辟途径。 及时了解平台功能,以确保您使用的是最新的创新和最佳实践。 持续监控这些新增功能的反馈和性能指标,以改进您的方法。
确定优化工作的优先级
主动优化性能意味着在出现任何性能问题之前采取措施来改进和增强工作负载的性能。 使用主动措施包括识别潜在瓶颈、监控性能指标和实施优化,以确保工作负载高效运行并满足所需的性能目标。 根据对恶化的组件、关键流程和技术债务的分析,您可以实施特定于每个区域的性能优化。 改进可能涉及代码更改、基础设施调整或配置更新。
优先处理劣化组件
随着工作负载的发展和使用模式的变化,这些更改通常会影响工作负载中各个组件的性能。 数据库中的数据增加会导致查询运行时间延长和数据检索速度变慢。 使用模式的更改可能会导致查询设计不理想。 随着工作负载的发展,曾经高效的查询可能会变得效率低下。 低效的查询会消耗过多的资源并降低数据库性能。
重要的是要不断努力优化性能随时间推移而下降的组件的性能。 主动识别并解决工作负载中的性能问题。 通过优先考虑已知的恶化组件,您可以主动解决潜在的性能问题并确保工作负载的平稳运行。 考虑实施性能优化技术或优化资源分配。
确定关键用户和系统流的优先级
关键用户和系统流是工作负载中最重要和优先级最高的流程或工作流。 通过确定这些关键流的优先级,您可以确保工作负载的最重要部分得到性能优化。 了解哪些流程至关重要有助于确定优化工作的优先级。 优化应用程序最重要区域的性能效率可提供最高的投资回报。 您应该监控关键流和应用程序最流行的部分。 寻找提高他们效率的方法。
自动优化性能
自动化可以消除重复且耗时的手动流程,从而能够高效执行它们。 自动化减少了人为错误的可能性,并确保运行优化任务的一致性。 通过自动执行这些任务,您还可以让人们专注于更复杂的活动和增加价值的活动。 您可以将自动化应用于各种任务,例如性能测试、部署和监控。
自动化性能测试:使用 Selenium 等自动化性能测试工具来模拟不同的工作负载和场景。 Power Apps 测试引擎 是 CLI 中的 Power Platform 一个组件,可用于在其中 Power Apps测试独立画布应用程序。
自动部署:实施自动化部署流程,以确保一致且无差错的部署。 使用 CI/CD(持续集成/持续交付)工具自动执行部署过程。 这些工具可以帮助您识别性能瓶颈,因为它们用于测试终端节点、检查 HTTP 状态,甚至验证数据质量和变化。
监控和警报:设置自动监控和警报系统,以持续监控性能指标并检测任何偏差或异常情况。 当检测到性能问题时,可以触发自动警报以通知相应的团队或个人。
事件管理:实施自动化事件管理系统,该系统可以接收警报、创建工单并将工单分配给适当的团队进行解决。 这些步骤有助于确保及时解决性能问题并将其分配给正确的资源。
自动诊断:开发自动化诊断工具或脚本,以分析性能数据并确定性能问题的根本原因。 这些工具可以帮助查明导致性能问题的系统特定区域或组件。
自动修复操作:定义并实施可在检测到特定性能问题时触发的自动修复操作。 这些操作可能包括重新启动服务、调整资源分配、清除缓存或实施其他性能优化技术。
自我修复系统:通过自动执行已知性能问题的恢复过程,在您的系统中构建自我修复功能。 此功能可能涉及自动修复或调整系统配置以恢复最佳性能。
解决技术债务
技术债务是指在开发过程中累积的低效率、次优设计选择或可能影响性能的捷径。 技术债务、不明确的代码和过于复杂的实现会使性能效率更难实现。 解决技术债务涉及识别和解决这些问题,以提高工作负载的整体性能和可维护性。 这项工作可能包括重构代码、优化数据库查询、改进架构设计或实施最佳实践。 例如,也许您引入了技术债务来满足最后期限—您需要在随着时间的推移优化性能效率时解决该技术债务。
优化数据库
持续优化数据库涉及识别和实施优化,以确保数据库能够处理负载、提供快速回复时间并最大限度地降低资源利用率。 通过定期优化数据库,您可以提高应用程序性能、减少停机时间并增强整体用户体验。
- 优化数据库查询:编写不当的数据库查询会降低数据库性能。 低效的过滤器可能会导致不必要的数据处理。 复杂的子查询、嵌套查询和过多的函数会降低运行速度。 重写检索过多数据的查询。 确定最常见或最关键的数据库查询并对其进行优化。 优化有助于确保更快的查询。
- 查看模型设计:查看数据模型,以确保针对应用程序的特定要求对其进行优化。
Power Platform 便利化
自动执行性能优化:Solution Checker 根据一组最佳实践规则对解决方案进行静态分析检查,提供 性能建议 ,以快速识别有问题的模式。 请务必定期查看并解决这些建议。
监控性能优化:集成您的 Power Platform 工作负载 Application Insights 以获得优化性能的见解和建议。
分析副驾驶的性能和使用情况 Copilot Studio:Copilot Analytics 提供了 Copilot 性能的全面概述。 它使用人工智能(AI)技术来确定哪些主题对升级率、放弃率和解决率的影响最大。 跟踪 对话参与 率和 结果 对于衡量 Copilot 绩效指标和发现需要改进的领域至关重要。
性能效率清单
请参考整套建议。