首页 > 其他分享 >性能分析之数据理解和数学基础

性能分析之数据理解和数学基础

时间:2023-04-03 17:36:32浏览次数:36  
标签:分析 性能 比如说 数值 理解 数学 数据

PS:差不多完成了这一轮性能培训相关PPT的编写,一个最艰苦的部分也有了起色。


对于每一个做性能分析的来说,不可跳过的一个提升阶段是对数据的理解。

当初学者经历了工具的使用之后,下一步就面对了工具产出的数据,所以看得懂数据是必须的一个过程。


性能分析中的数据理解:

在数据理解上,有两个阶段:

  1. 知道计数器的含义:这个阶段看似简单,但能记得住那么多performance counter的人并不多,这个记不住倒是没有太大关系,遇到就查,多遇几次自然就记住了;
  2. 知道计数值的含义:这个阶段大部分人都需要好几年的时间才能完全掌握常规的计数值,之所以说只能掌握常规的计数值是因为有一些数值的联动关系不是那么容易碰得到。比如说CPU模式对TPS和RT的影响,大部分人都是拿到硬件的时候都是Full performance mode了,并不关心还有没有其他的模式;比如说网络计数值导致的TPS有规律或无规律的抖动。这些场景都要求做性能分析的在看到某个计数值的时候能有直接的反应,但是这一点非常难。因为数值的高低对大部分人来说就是一个谜,经常有人问这样的问题,这个值是高还是低,应该说只要不是一起工作的人都说不上来某个值是高还是低(当然对一些非常清晰的场景是比较容易判断的),合理还是不合理。

能经过数据理解的这一层次,我觉得才算是到了中级性能分析工程师的能力。


性能分析中的数学基础:

在经历了数据理解的过程之后,下一步就是性能分析中遇到的一些数学理论知识了。因为有些值不是直接显示出来的,而是计算出来的。像:平均值、最大值、最小值、标准方差等。这几个常见的还比较容易理解。

但是再复杂一些的比如说:请求的分布模型(比如说:泊松分布、正态分布等等);响应时间的分布模型(比如说:指数/负指数分布、双参数指数分布等);再加上做全局性能分析时要考虑的排队模型(到达率、服务强度、服务率、队列长度、平均等待时间、平均响应时间、排队规则、卡方检验之类的知识)。这些也同样是需要掌握的,当慢慢的把这些内容都掌握之后,就能更好的让自己的系统级、架构级思路更完整。

数学基础是提高性能分析的一个角度。当然经验也是一个角度。

从经验学到科学的过程就是总结固化的过程。


应该说不止是性能测试、性能调优分析领域需要这些技能,其他领域同样需要这些基础技能。



标签:分析,性能,比如说,数值,理解,数学,数据
From: https://blog.51cto.com/u_15181572/6166925

相关文章

  • 数学建模—层次分析
    数学建模—层次分析法相关概念层次分析法主要解决评价类问题,比如,选择那种方案更好,谁更优秀评价类问题可用打分解决,将选择条件分成不同的指标,权值和为一同颜色的单元格合为1,表示某一因素所占的权重层次分析法步骤1.分析系统中各因素的关系,建立层次结构使用层次分析法一......
  • Spark视频王家林第119课: Spark Streaming性能优化:如何在生产环境下应对流数据峰值巨变
    Spark视频王家林第119课:SparkStreaming性能优化:如何在生产环境下应对流数据峰值巨变?本节讲解SparkStreaming性能优化:如何在生产环境下应对流数据峰值巨变?数据峰值及流量变化的不稳定有2个层面:1)第一个层面就是数据确实不稳定,例如晚上11点的时候访问流量特别高,相对其他时间而言表......
  • 从MLSQL性能设计到对架构师的重新思考
    从MLSQL性能设计到对架构师的重新思考五年前,我会认为,架构仅仅是针对一个可大可小的问题,把流程设计好,然后往里面填充合适的组件,从而最终解决这个问题。在这个过程中,区分架构师是否资深主要是在设计过程中对可扩展性,可维护性,以及成本权衡的把控能力。现在,我觉得架构不应该仅仅是这样......
  • 性能分析之调试工具——GDB之二
    由于上一个GDB的写的水份比较足,所以应看官们的要求,来写些具体的东西。其实网上有很多GDB的教程。我也搜索过。但是总是有那么一两个点缺少的。所以决定自己还是把工作中的记录一些下来。至少是具体工作中的实践操作。前几天因为遇到个redis的问题,所以编译了一下reids,并且做一些监控......
  • 性能分析之dubbo性能参数导致单cpu高
    今天记录一个小问题。问题不大,也没什么分析的逻辑可以讲的。但是想着比较典型,所以就写一写。某年某月的某一天,就像一张破碎的脸......不对,串台了。这一日,一个朋友发来个问题。听起来是个问题。一个线程忙,这种情况应该比较好处理吧。再看一下CPU的状态是什么样,记住这一步是看进程......
  • 性能分析之一个阿里云环境公众号小程序服务性能分析案例
     前天有个认识多年的做性能测试的朋友发了个信息给我。让我帮他分析一个问题。一看到性能问题描述,我就想骂人,你自己也做性能测试十年以上了,性能问题还来问我?这家伙是来考我的,第一印象就是这样。摘抄关联信息如下: 场景30分钟,用户100递增到1000,应用服务器CPU使用率70%-80%。tomcat......
  • 性能分析之OS资源饱和度
    在做性能分析的时候,我们不可避免地判断资源到底够不够用?哪里不够?为什么不够?证据是什么?回复得了这些问题并不容易。今天就来絮叨一下OS资源饱和度应该如何衡量。现在kubernets盛行,所以这里来借用k8s中部署的prometheus+grafana来看直观的看图。CPU资源:先看一个图:一边是CPU使用率,一边......
  • 性能工具之JMeter两个Java API Demo
    概述本文演示两个通过JavaAPI执行JMeter脚本的示例主要功能在线生成jmx脚本(demo1)加载本地已有jmx脚本(demo2)运行多个Sampler将生成的TestPlan存储为.jmx文件执行单机压测将测试执行结果存储为.jtlor.csv文件示例Maven配置为了开始使用JMeterAPI,我们首先需要将它添加到......
  • 性能工具之Taurus场景使用(进阶篇)
    前言在上两文中介绍了安装和入门使用,本文我们来看看Taurus一些进阶的玩法。性能工具之Taurus入门(安装篇)性能工具之Taurus使用(入门篇)复杂场景统一测试复杂场景的压力测试,如果有多个同学从事脚本开发,则有时必须使用多个测试脚本文件。这意味着将多个测试脚本需要集成到单个压力测试......
  • 【论文速递】MMM2020 - 电子科技大学提出一种新颖的局部变换模块提升小样本分割泛化性
    【论文速递】MMM2020-电子科技大学提出一种新颖的局部变换模块提升小样本分割泛化性能【论文原文】:ANewLocalTransformationModuleforFew-shotSegmentation【作者信息】:YuweiYang,FanmanMeng,HongliangLi,QingboWu,XiaolongXuandShuaiChen获取地址:https://arxi......