原文: 第四章——SQLServer2008-2012资源及性能监控(1)

性能优化的第一步是发现问题,而发现问题通常又有两类:突发问题的侦测和常规问题的侦测,对于常规问题的侦测,通常需要有一个长效的性能监控作为依据。

本系列文章介绍

  • 服务器性能监控
  • CPU使用率监控
  • 内存使用率监控

前言:

当由于劣质的查询写法、缺失必要的索引或者数据库级别的其他情况所导致的性能问题时,可以通过使用执行计划、DMVs/DMFs、SQL Trace或者数据库引擎顾问(DTA)这些手段来查找问题的根源。

但是,如果性能问题发生在硬件或者操作系统级别(如CPU/内存/IO/网络问题等),就要使用一些复杂的工具来协助你找到性能问题。因为这些进程运行在操作系统层面。

对于Windows server 2008R2、Windows 7这类新的操作系统,可以使用一个叫性能监视器(Performance Monitor),也叫可靠性和性能监视器(Reliability and Perfomance Monitor)来实现更有效的监控。

在Windows中,有三个工具可以用来监控性能:

1、  资源监视器(Resource Monitor)

2、  性能监视器(Perfomance Monitor)

3、  可靠性监视器(Reliability Monitor)

资源监视器提供一个快速、实时及图形化界面来显示包括CPU、内存、I/O和网络使用情况的信息,可以监视和检查所有当前运行在机器上的进程的这部分信息。并可以通过这个工具来结束你认为对性能有潜在风险的进程。

性能监视器提供实时性能监控的图形化界面工具,可以使用上百种性能计数器来跟踪性能数据。并把数据存放到文件中供进一步分析所用。

可靠性监视器同样提供图形化界面,通过计算系统一段时期内的稳定性索引,来分析系统的稳定程度。任何的问题都会降低这些系统稳定性索引。

这三种工具公用一个接口——微软管理控制台(MMC),可以合起来查看。可靠性和性能监视器合成了这三个工具的的所有功能。

在本系列文章中,将熟悉资源监视器、可靠性和性能监视器,并演示如何使用这些工具来检查和监控硬件资源的性能。

监视服务器性能

当用户反应SQLServer所在的服务器响应速度非常慢时,将优先使用什么工具来快速查看服务器性能?

在过去,可能会使用任务管理器来实现,但是在今天,可以使用更强大的工具来查看服务器资源。也就是资源监视器。

本文将给出一个如何使用资源监视器来监控硬件资源及服务器性能的快速入门。

准备工作:

1、  开发版或者企业版的SQLServer2008、2012。

2、  安装在Windows操作系统上的资源监视器。从Windows Server 2008R2或者Windows7以后才出现。

3、  微软示例数据库AdventureWorks。

演示步骤:

1、  打开资源监视器,方法:在【运行】中输入resmon.exe或者用快捷键Windows+R来输入。

2、  通过下图可以看到资源监视器有5个选项页。第一个为概述页。可以查看服务器的整体性能。

3、  如果想查看SQLServer服务所使用的CPU情况,可以点击第二个选项页【CPU】,并找到进程名为:sqlservr.exe的那一行。点击第一个窗口之后,下面的窗口会显示出相应的资源。如图:

4、  如果想查看SQLServer使用的内存情况,可以使用步骤3中的方法,在第三个选项页【内存】中查看,如图:

5、  如果要检查服务器上活动的磁盘I/O,可以选择选项页【磁盘】,因为在前面已经选择了sqlservr.exe进程,所以这个页面显示的将会是SQLServer服务所引起的I/O活动。可以连到SSMS中,输入以下脚本:

USE AdventureWorks
GO
SELECT  *
FROM    Sales.SalesOrderDetail WITH ( NOLOCK )
GO

6、  马上切换回资源监视器。将会看到有I/O操作作用于AdventureWorks数据库文件上,如图:

分析:

本文中直观地展示了资源监视器的使用,资源监视器提供了CPU、内存、磁盘IO、网络方面的资源使用情况信息,它分成5个部分来展示相关信息:

1、 概述:提供了其他4个选项页中包含的服务器资源信息。当你发现产生性能问题的进程后,可以从这里结束掉。

2、CPU:这个选项页提供CPU使用的百分比信息,也显示在概述页中显示的每个进程的详细CPU信息。并可以看到对应进程的服务、关联句柄及关联模块。在右边,还能看到试试的图形化的所有可用CPU的实时情况。如果你找到CPU使用率非常高,就应该检查是什么使用着这些CPU资源。

3、内存:这个选项页显示内存使用情况。可以找到系统有多少内存、多少内存已经在使用、多少内存空闲。还提供了每个进程的内存消耗情况。资源监视器的最大优势是可以通过勾选特定进程来获取相应的资源信息。

4、磁盘:这个选项页是显示各个进程对应的磁盘I/O活动,通过Read(B/Sec)和Write(B/Sec)列,可以看到特定进程的IO情况。同时也可以看到某些文件上的IO活动。右边显示当前IO的实时情况。

5、 网络:显示出当前网络使用情况。可以看到所有TCP连接所对应的不同的进程,也可以筛选特定进程。

扩展信息:

通过使用资源监视器,可以快速定位消耗硬件资源的进程。同时可以查看网络方面的瓶颈。在SQLServer生产环境中,如果你发现某些进程、应用程序耗费的资源比SQLServer还多,并已经影响到SQLServer的性能,你可以考虑把这些经常或者应用程序移到别的服务器,以使得SQLServer的性能不会收到太大的影响。

第四章——SQLServer2008-2012资源及性能监控(1)相关推荐

  1. 第十四章 Linux核心资源

    Table of Contents, Show Frames, No Frames 第十四章 Linux核心资源 本章主要描叙寻找某个特殊核心函数时用到的Linux核心资源. 本书并不要求读者具有C编 ...

  2. 监控程序崩溃重启_第十四章 Homeassistant服务器安全及状态监控(下)

    导读: 透过对服务器CPU状态的监控,并实时发送服务器状态数据及图片来及时发现服务器异常,并在必要时解除威胁. 上篇大致说到了Linux系统的一些基础安全设定,和路由器的简单设置,虽然看似简单,却是性 ...

  3. 支付宝蚂蚁金服是怎么把前端性能监控做到极致的?

    本文来自蚂蚁金服前端技术专家杨森在 ArchSummit 北京 2018 的分享,他将分享如何通过 Performance 相关的 API 准确的采集用户性能数据,并如何通过大数据计算加工最终产出用户 ...

  4. android movie 资源释放,Android 资讯类App项目实战 第四章 电影模块

    前言: 正在做一个资讯类app,打算一边做一边整理,供自己学习与巩固.用到的知识复杂度不高,仅适于新手.经验不多,如果写出来的代码有不好的地方欢迎讨论. 以往的内容 第四章 电影模块 本章内容最终效果 ...

  5. 性能之巅第二版 第四章 观测工具

    第四章 观测工具 学习目标 认识静态性能工具和危机排查工具 了解工具的类型和工具运行的开销,包括:计数器.剖析工具和跟踪工具 观测工具的来源 工具范围 分为静态性能工具和危机处理工具 工具类型 性能观 ...

  6. 设计数据密集型应用 第四章:编码与演化

    设计数据密集型应用 第四章:编码与演化 唯变所适 --以弗所的赫拉克利特,为柏拉图所引(公元前360年) 文章目录 设计数据密集型应用 第四章:编码与演化 编码数据的格式 术语冲突 语言特定的格式 J ...

  7. 通信网络基础期末复习-第四章-多址接入协议

    文章目录 第四章 多址技术 4.1 多址协议概述 4.1.1 MAC层在通信协议中的位置 4.1.2 多址协议的分类 4.1.3 系统模型 4.2 固定多址接入协议 4.2.1 频分多址接入(FDMA ...

  8. Prism4文档翻译(第四章 第一部分) 转载bluesky234

    本节导读: 第四章介绍了模块化应用程序开发所必要的知识和需要注意的内容.而本部分通过讲述模块化应用程序开发所注意的必要概念,包括IModule接口,模块加载过程,模块列表,模块间通信,和依赖注入容器, ...

  9. 系统架构师学习笔记_第十四章_连载

    第十四章  基于ODP的架构师实践 14.1  基于ODP的架构开发过程 系统架构 反映了功能在系统系统构件中的 分布.基础设施相关技术.架构设计模式 等,它包含了架构的 原则 和 方法.构件关系 与 ...

最新文章

  1. Java报告比较日期_Java程序如果一个日期在另一个日期之后比较日期
  2. cygwin中写c语言程序,在windows下怎么利用Cygwin进行编程
  3. Node_MongoDB
  4. 通信 / 各种协议默认端口汇总
  5. [linux] ubuntu gnome 控制面板恢复
  6. 图片预览------photoswipe 使用
  7. LeetCode 1678. 设计 Goal 解析器
  8. mysql什么是覆盖索引,MySQL中的覆盖索引
  9. 基于JAVA+SpringBoot+Mybatis+MYSQL的今日头条新闻网站
  10. ABAQUS仿真软件经典案例——水滴入水分析
  11. 苹果专用视频播放器Elmedia Video Player pro
  12. 什么是云备份,如何在教育行业正确使用云备份?
  13. 准备走上共享软件之路,出师不利,两块石头石沉大海,我打算流了她们。
  14. MATLAB提取不规则txt文件中的数值数据(简单且实用)
  15. python 柱状图 内部颜色_Matplotlib/seaborn柱状图使用不同的颜色分组存储箱
  16. 一定要时常清理QQ的七个文件夹(时间长占内存超大!)
  17. python 通过图片(原图)精确获取图片拍摄的位置,时间,设备等信息
  18. Comparator、compare、compareTo
  19. handle java
  20. 烽火ExMobi移动应用平台能源行业初体验

热门文章

  1. 04-3. 统计素数并求和(20)
  2. (转)javascrit中的uriencode
  3. 第一次用AX2009正式版!
  4. 自动驾驶感知-车道线系列(一)——车道线基础流程实现
  5. _InputArray 和 outputArray在ORBslam中的使用
  6. 有没有安卓4.0的java模拟器_电脑端安装Android4.0模拟器使用教程
  7. 深度学习(01)——安装anaconda
  8. mysql 临时表 中文_MySQL 临时表
  9. 原子自增_多线程系列-(六)原子类与CAS(了解即可)
  10. 广义矩估计的一般步骤_【基本无害】动态理性预期理论与广义矩估计02