软件系统性能测试体系流程介绍之windows系统与SQL SERVER 2008数据库服务性能监控分析简要

目前大部分测试人员对操作系统资源、中间件、数据库等性能监控分析都是各自分析各自的监控指标方式造成收集到各项性能指标数据无法完全对映出来组建性能问题最终无法及时准确定位问题。本次交流讨论主要是从操作系统、数据库的角度分别对的参数进行了分析,梳理参数关系,来充分发挥监控软件性能。
    对于windows系统和SQL SERVER数据库监控一部分人都喜欢使用loadrunner直接远程连接监控或者通过使用perfmon进行监控,两者监控收集的性能指标一样,只是如果使用LR是可以很好的的结合响应时间等以资源使用情况图合并等更好更形象的图形化分析,确实不错只是多了额外的网络等性能开销。

对于如何通过perfmon.exe对windows系统与SQL SERVER 2008数据库服务性能监控分析-------性能监控大部分人都会,但是对于少部分性能测试初学者他们对系统资源、中间件、数据库等性能监控分析都是各自分析各自的性能指标没有很好的把系统性能指标和数据库应对于得性能指标结合一起监控分析等方式造成收集到各项性能指标数据无法完全对映出来组建性能问题最终无法及时准确定位问题。因此对于从操作系统、数据库的角度出发分别对其各项性能指标参数进行了分析,梳理它们之间性能参数之间的关系,进而才能充分发挥性能测试监控诊断分析的优势才能更好的为性能优化提供有价值的参考依据。
  
 2.1 操作系统监控CPU与SQL SERVER
 CPU性能指标:Privileged Time:(CPU内核时间)是指处理线程执行代码所花时间的百分比。如果该参数值和“Physical Disk”参数值一直很高,表明I/O有问题。
   SQL compilations/sec,每秒的SQL编译数,表示编译SQL路径被引入的次数,包括需要重新编译的。
   SQL SERVER用户活动稳定后,该值也达到某一稳定状态值。
   recompilations/sec(每秒SQL重编译数)每秒的SQL重新编译数。计算重新编译被触发的次数。一般来说,重新编译计数器最好保持较低值。
  
   假如SQL SERVER数据库服务器的CPU值很高高,而没有抓取到相应影响CPU使用率的的SQL语句等这时可以尝试把该性能指标值加入
   监控范围内,查看该指标是否很高,如果很高说明系统在不断的编译,而影响服务器CPU资源的使用开销。
 2.2   内存与SQL SERVER:
    内存 sql server可使用的内存量是sql server性能最关键因素之一。而内存同i/o子系统的关系也是一个非常重要的因素。例如,在i/o操作频繁的系统中,sql server用来缓存数据的可用内存越多,必须执行的物理i/o也就越少。这是因为数据将从数据缓存中读取而不是从磁盘读取。同样,内存量的不足会引起明显的磁盘读写瓶颈,因为系统缓存能力不足会引起更多的物理磁盘i/o。
    这时可以利用system monitor检查sql server的buffer cache hit ratio计数器,如果命中率经常低于90%,就应该添加更多的内存。
    以及IO 与CPU 内存之间的互相影响关系等等

2.3 内存与IO性能指标结合分析问题:
   Page Reads/sec:这个值如果很高往往意味着内存存在瓶颈,如果这个值比较低,而%Disk Time 和Avg. Disk Queue Length比较高的话,则意味着瓶颈在磁盘
   磁盘、CPU、内存如何结合分析因为有时问题不是单一性而是连锁反应的,可能由于过多的页交换要使用大量的硬盘空间,因此有可能将导致将页交换内存不足与导致页交换的磁盘瓶颈混淆。
  
   建议在测试过程中不是每项指标都要去监控收集还有采集时间也要根据被测对象当时测试场景设计情况去划分(结合软件性能测试生命周期各阶段实施过程介绍中第一章节介绍的场景去设计监控场景),而且还要结合系统与应用软件的特性进行结合监控分析,才能更好的定位问题,如SQL Server与操作系统相关性,操作系统性能的好坏直接影响数据库的使用性能,如果操作系统存在问题,如cpu过载、过度内存交换、磁盘i/o瓶颈等,在这种情况下,单纯进行数据库内部性能调整是不会改善系统性能的。通过Windows NT的系统监视器(system monitor)来监控各种设备,发现性能瓶颈。
   如:数据库设计的好坏也直接影响系统资源的使用,如大量全表扫描检索数据最终导致CPU、I/O、内存、网络的使用。

--------以上只是简要介绍,如果有心研究的朋友可以多多结合学习数据库工作的机制原理,与操作系统之间的工作原理结合,就能更好的分析性能问题,当然离不开业务的分析和支持。当我们所测试的业务系统因为随着时间的流逝,数据量的增加而且业务数据最终是落地到磁盘中,最简单的某种业务的数据查询也是从磁盘中获取,因此磁盘是会被大量使用,然而磁盘的存取速度与内存和处理器相比要慢很多,如果在出现磁盘的争用可能显著的降低SQL SERVER的性能,因此对磁盘资源的使用瓶颈分析和解决能够显著地增进SQL SERVER性能,当然这是也要考虑数据库设计以及SQL写法等等--这些就是第三节介绍的《SQL SERVER 2008数据库服务性能监控分析优化方法》。

总之不是表示每次监控都是收集所有的各项指标来分析表示最好的。因为监控分析以及收集本身也是一个很大的性能开销,所以做为性能测试人员我们要设计合理的性能监控数据收集,以最小化监控工具对系统的影响。

windows系统与SQL SERVER 2008数据库服务性能监控分析简要的更多相关文章

  1. SQL Server添加MDW性能监控报表(转载)

    10.2 Data Collector与MDW Data Collection功能是SQL SERVER 2005版本提供的数据库监控报表的功能,通过定时地对数据库的语句运行情况,服务器各种资源的监控 ...

  2. SQL Server添加MDW性能监控报表

    10.2 Data Collector与MDW Data Collection功能是SQL SERVER 2005版本提供的数据库监控报表的功能,通过定时地对数据库的语句运行情况,服务器各种资源的监控 ...

  3. SQL SERVER - 谈死锁的监控分析解决思路

    1 背景 1.1 报警情况 最近整理笔记,打算全部迁移到EVERNOTE.整理到锁这一部分,里边刚好有个自己记录下来的案例,重新整理分享下给大家. 某日中午,收到报警短信,DB死锁异常,单分钟死锁12 ...

  4. SQL Server 2008 镜像的监控 - Joe.TJ -

    http://www.cnblogs.com/Joe-T/archive/2012/09/06/2673237.html

  5. SQL SERVER 2008 数据库隔离级别代码演示

    SQL SERVER 2008 数据库隔离级别代码演示   个隔离级别(其实这是SQL 工业标) 种隔离级别,本身没有优劣之分,完全取决于应用的场景. 本质上,他们是在 隔离性(紊乱程度) 和 灵活性 ...

  6. 安装 SQL Server 2008 R2 的硬件和软件要求(转)

    以下各部分列出了安装和运行 SQL Server 2008 R2 的最低硬件和软件要求.有关 SharePoint 集成模式下的 Analysis Services 的要求的详细信息,请参阅硬件和软件 ...

  7. 详解SQL Server 2008工具SQL Server Profiler

    一.SQL Profiler工具简介 SQL Profiler是一个图形界面和一组系统存储过程,其作用如下: 1.图形化监视SQL Server查询: 2.在后台收集查询信息: 3.分析性能: 4.诊 ...

  8. SQL Server 2008空间数据应用系列二:空间索引(Spatial Index)基础

    原文:SQL Server 2008空间数据应用系列二:空间索引(Spatial Index)基础 在前一篇博文中我们学习到了一些关于地理信息的基础知识,也学习了空间参照系统,既地球椭球体.基准.本初 ...

  9. SQL Server 2008数据库连接错误

    以Windows身份连接SQL Server 2008数据库时,连接不上,出现如下报错画面: 解决办法:打开services窗口,找到名字类似于SQL Server (xxx)的服务,启动服务. 注: ...

随机推荐

  1. 百万年薪python之路 -- 列表练习

    1.写代码,有如下列表,按照要求实现每一个功能 li = ["alex", "WuSir", "ritian", "barry&q ...

  2. volatile关键字使用

    1.volatile 使用场景(多线程情况下): 适合使用在 一写多读 的情况下: 2.volatile 理解分析: 使用 volatile 关键字修饰的变量,值在改变时会直接刷新到 主内存 中,而不 ...

  3. Alpha阶段--第七周Scrum Meeting

    任务内容 本次会议为第六周的Scrum Meeting会议 召开时间为周日下午5点,在潮音餐厅召开,召开时间约为30分钟,对已经完成项目的总结和对今后项目设计的展望 队员 任务 张孟宇 “我的”界面代 ...

  4. springboot(3)——配置文件和自动配置原理详细讲解

    原文地址 目录 概述 1. 配置文件作用 2.配置文件位置 3.配置文件的定义 3.1如果是定义普通变量(数字 字符串 布尔) 3.2如果是定义对象.Map 3.3如果是定义数组 4.配置文件的使用 ...

  5. 宋宝华:关于Ftrace的一个完整案例

    本文系转载,著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 作者: 宋宝华 来源: 微信公众号linux阅码场(id: linuxdev) Ftrace简介 Ftrace是Lin ...

  6. 永恒之蓝复现(win7/2008)

    Kali对Windows2008/7的MS17010漏洞测试(MSF自带模块) 0x01 说明 其实这个MSF自带的exp模块还是挺让人伤脑筋的,因为它支持的OS并不是很多,也就Windows Ser ...

  7. 学习笔记24_MVC前后台数据交互

    *最普通的交互方式,在Contoller中的Action方法内 public ActionResult Index() { ViewData["Key"] =Value; Retu ...

  8. 关于virtualbox虚拟电脑控制台严重错误解决方法。。。

    今天的我已经泪崩,忙了一天,临近下班的时候,突然发现虚拟机关了,再打开时,提示错误!!! 然后在网上查方法解决完的时候,再打开一看,完了,虚拟机里面的内容全没了...现将解决方法记录如下: 1.打开, ...

  9. MapReduce 人个理解

    1.MapReduce 理解 拆分成 map 过程与 reduce 过程: map 可以理解为sql 中的 group by 操作, reduce相当于group by 后的聚合计算 : 一个map ...

  10. 基于代码生成器的快速开发平台 JEECG

    JEECG是一款基于代码生成器的J2EE快速开发平台,开源界“小普元”超越传统商业企业级开发平台.引领新的开发模式(Online Coding模式(在线开发)->代码生成器模式->手工ME ...