首页 > 其他分享 >性能调优五步法

性能调优五步法

时间:2023-11-27 17:55:53浏览次数:30  
标签:调优五 瓶颈 性能 系统 监控 步法 优化

本文分享自天翼云开发者社区《性能调优五步法》,作者:x****n

Linux 内核从 2.5 版本开始针对 NUMA 架构做了大量优化工作,同时也提供了丰富的工具和接口,可以帮助我们很容易的完成访问本地内存的设置。所以,通过适当的性能调优,可以提供更高的计算能力。

性能优化通常可以通过五个步骤完成

1.确认基线

性能优化第一步是确定当前性能,并明确性能应提升的程度。如果系统性能不佳,我们就需要花时间进行研究分析,但如果系统性能接近其峰值,那可优化的空间就微乎其微。性能基线必须是一种客观可度量的指标,在明确如何度量特定系统或者应用程序的性能后,在调整和优化之前,运行应用程序并记录其性能,这就是基线值。在记录应用程序基线的同时我们需要对整个系统部件进行基准监控,包括CPU、内存、IO、网络吞吐、响应延时等系统运行数据。

2.压力测试

采用应用系统加压或者标准的压力工具对系统进行压力测试,使用性能监控工具观察系统运行状态,详细记录系统运行数据,精确的历史记录有利于我们定位系统瓶颈及确定后续优化手段是否有效的重要依据

3.监控瓶颈

系统在压力状态下,采用监控工具进行监控是为了确定系统的瓶颈(即可以优化的突破点)。系统的瓶颈通常在CPU过于繁忙、IO等待、网络等待、内存访问延迟高等方面出现。在测试过程中,我们不仅需要关注被测系统本身,同样需要注意是否由于硬件连接问题而导致性能异常。

4.瓶颈优化

确定系统瓶颈所在之后,接下来需要对瓶颈进行优化。瓶颈的优化是一个复杂的系统工程,我们必须在每一次调试后进行性能监控及系统状态的记录,已确保我们调试优化的方向,很多时候优化是需要多方面同步进行的,并非单一因素作用即可达到目标。在优化过程中我们也需要做好回滚的准备,保障系统的正常运行及可测量性。本文总结了一些常见的系统瓶颈及优化方案,供大家参考。

5.确认优化效果

实施优化方案后,重新进行压力测试,通过监控工具确认瓶颈是否消除,系统性能是否达到目标。若瓶颈依旧存在,系统性能指标未提升,则需要重新进行5步法,若瓶颈消除,系统性能指标达到目标,则需详细记录优化方案,后续作为标准文档进行输出应用。

标签:调优五,瓶颈,性能,系统,监控,步法,优化
From: https://www.cnblogs.com/developer-tianyiyun/p/17859965.html

相关文章

  • 3招解决时序数据高基数难题,性能多维度提升!
    本文分享自华为云社区《DTSETechTalk|3招解决时序数据高基数难题,性能多维度提升!》,作者:华为云开源。本期《openGemini全新列存引擎,为您解决时序数据高基数难题》的主题直播中,华为云开源DTSE技术布道师&数据库创新Lab技术专家黄飞腾,与开发者朋友们分享了时序数据库的特点和遥测......
  • diffusers sdxl 性能分析
    加载fp16模型到显存的消耗单图运算时的消耗unet阶段vae阶段双图运算时的消耗unet阶段vae阶段......
  • 3招解决时序数据高基数难题,性能多维度提升!
    本文分享自华为云社区《DTSETechTalk|3招解决时序数据高基数难题,性能多维度提升!》,作者:华为云开源。本期《openGemini全新列存引擎,为您解决时序数据高基数难题》的主题直播中,华为云开源DTSE技术布道师&数据库创新Lab技术专家黄飞腾,与开发者朋友们分享了时序数据库的特点和遥测数......
  • HTTPS 性能优化技巧
    认识SSL/TLSSSL和TLS都是用于保障端到端之间连接的安全性。SSL最初是由Netscape开发的,后来为了使得该安全协议更加开放和自由,更名为TLS,并被标准化到RFC中,现在主流的是TLS1.2版本。从上图,可以看出SSL/TLS是介于应用层和传输层之间,并且分为握手层(HandshakeLayer)和记录层(Record......
  • .NET8 极致性能优化 Non-GC Heap
    前言.NET8里面JIT引入了一个新的机制,叫做Non-GCHeap。JIT可以确保相关对象分配在Non-GCHeap上,该堆像其名称一样,不受GC管理。JIT需要保证这个对象没有被GC引用,并且在这个对象的生命周期内一直是根对象(不会被GC消灭的对象)的状态。原文:.NET8极致性能优化Non-......
  • 性能优化的一般策略及方法
    性能优化的一般策略及方法在汽车嵌入式开发领域,性能优化始终是一个无法回避的问题:座舱HMI想要实现更流畅的人机交互通信中间件在给定的CPU资源下,追求更高的吞吐量更一般的场景:嵌入式设备CPU资源告急,需要降低CPU使用率...不同的工程师会从不同的角度给出不同的优化......
  • 软件性能测试与实践
    一、性能测试基础1.1性能测试的场景1.1.1业务场景:分析业务流程,找出性能场景1.1.2测试场景:模拟性能场景,构造多个测试场景,得到测试结果,并分析得到测试结论。1.1.3单场景:单个业务场景,测试场景下性能指标最大TPS,平均响应时间,和吞吐量。1.1.4.混合场景:设计多个业务流程,并给予不同......
  • 性能测试复习准备——linux环境下安装kafka_2.13-3.2.3.tgz
    参考:https://www.bilibili.com/video/BV1Xy4y1G7zA?p=6&vd_source=79bbd5b76bfd74c2ef1501653cee29d6      解压到目录路径下:  启动kafka之前,首先启动zk:       修改配置文件:        启动kafka和查看:       ......
  • 什么是 Web 应用性能参数中的 First Contentful Paint
    "FirstContentfulPaint"(简称FCP)是一个非常重要的性能指标,用于测量我们的网页在用户的设备上渲染出第一片有意义内容的时间点。这个指标是Web性能用户体验的关键部分,因为它直接关系到用户对网站加载速度的第一印象。在互联网世界中,每一毫秒的延迟都可能影响用户的满意度,甚至影......
  • .NET领域性能最好的对象映射框架Mapster使用方法
     Mapster是一个开源的.NET对象映射库,它提供了一种简单而强大的方式来处理对象之间的映射。在本文中,我将详细介绍如何在.NET中使用Mapster,并提供一些实例和源代码。和其它框架性能对比: Mapster的安装和配置:首先,打开VisualStudio并创建一个新的.NET项目。在NuGet包管......