zoukankan      html  css  js  c++  java
  • 轻松精通数据库管理之道——运维巡检之八(性能)

    前言

      做好日常巡检是数据库管理和维护的重要步骤,而且需要对每次巡检日期、结果进行登记,同时可能需要出一份巡检报告。

      本系列旨在解决一些常见的困扰:

    • 不知道巡检哪些东西
    • 不知道怎么样便捷体检
    • 机器太多体检麻烦
    • 生成报告困难,无法直观呈现结果

      性能是系统好坏的重要指标之一,而性能问题可能是因为某一个小点而引起(如参数配置、作业配置、结构设计、软硬件环境等)。前面七篇文章从不同的方面对系统进行了巡检,本篇将介绍系列巡检中最重要的一项(性能)。

    性能基线

      性能巡检的指标非常多,情况变化也很大,所以对自己的系统应该建立起一套完整的性能评价模型,何为性能评价模型,就是当系统进入一个平稳期,经过了优化,系统性能已经达到了一个稳定值,那么我们可以用这个稳定的项目作为后期巡检,及功能上线,结构变更等操作性能对比的基线。

      在【体检项目】页我们可以使用一个比较稳定的体检项目的历史版本作为性能基线,为了区分其他项目可以重命名为”性能基线“。

      

      

    基于性能基线对比

     总体指标

      在【概览】页我们可以从整体查看系统的性能现状,主要从【查询语句-执行时间】、【会话-等待类型】、【检查项】等,与基线进行对比。查看巡检中的指标是否与基线指标有较大的差异。

      例:当巡检时【查询语句-执行时间】中各个时间段的慢语句数量明显高于基线,那么可以说明系统中的语句可能有变慢的情况。CPU、内存、IO等系统指标压力升高,说明你系统的压力变大,变大的原因可能因为有新增的不优化语句或硬件资源出现问题。

      注:基线与巡检的收集时间应保证相同或小幅差异。如果差异很大,可能不具有说明性。

       

    具体指标

      计数器

    • 系统计数器
    • 数据库计数器

      

      查询语句

      在巡检中,我们可以主要关注:

       

    • 慢语句数量

      

    • 执行次数top 10
    • 持续时间top 10
    • CPU消耗top 10
    • 读次数 top 10
    • 写次数top 10
    • 影响行数top 10

      

     系统等待与阻塞

      在巡检中,我们可以主要关注:

    • 等待的类型及数量分布

      

    • 等待时间分布

      

    • 等待次数top 10
    • 等待时间top 10
    • CPU时间top 10
    • 逻辑读次数 top 10
    • 物理读次数top 10
    • 物理写top 10

      

     其他指标

      数据库的性能巡检指标很多,可以根据自己系统的情况选择,具体指标及优化方式请参见:性能诊断系列

    总结

      前面的一些巡检项及配置项,在管理比较规范的系统下,一般并不会出现什么问题,而性能不同,这是一个受很多因素影响,并且比较容易产生问题的项。同时性能对系统的总要程度是不言而喻的,做好前面的巡检也是性能稳定的保证。

  • 相关阅读:
    apache和tomcat有什么不同,为什么要整合apache 和tomcat?
    servlet
    关于Spring配置文件xml文档的schema约束
    request对象和response对象
    多线程
    数据结构得到连续数据的手段java Enumeration
    程序员八荣八耻
    windows更改MySQL存储路径
    Tomcat源码学习(1)
    Tomcat源码学习(2)——启动过程分析
  • 原文地址:https://www.cnblogs.com/double-K/p/6073884.html
Copyright © 2011-2022 走看看