第21/24周 性能监控(PAL工具)
大家好,欢迎来到性能调优培训的最后一个月。在过去的5个月里,我们谈了SQL Server的各种性能相关的话题,包括性能调优的技术和问题。
但当在你面前,SQL Server没有按你预想的运行时,你会怎么办?为了帮你处理这个情况,今天我们会谈到下性能监控技术,下周我们会详细谈到SQL Server里所谓的等待统计(Wait Statistics)。现在开始我们的性能监控。
让我们建立一个基线!
很多人坐在他们的SQL Server前,知道它的性能非常差,却不知道如何找出潜在的根源,也不知道如何解决它。对这个问题,我的答案非常简单:监控并收集当前情况的信息,和你的基线(baseline)比较,识别出最突出的性能瓶颈。是的,你没听错:你需要建立基线来识别性能问题,不然的话就是在瞎猜。下图显示了在建立的基线上,在SQL Server里,一个非常简单的识别并解决性能问题的方法。
这个方法的思路非常简单。在第1步里你需要收集一些SQL Server的关键指标。这些关键指标作为你的初始基线。在下一部分我会谈下你应该收集的关键指标。在你建立了你的基线后,你可以开始在抓取的数据里识别最常见的性能问题。在下一部分你会看到,有一些免费的工具,可以用它来自动完成这个操作。
最后,你一次只做一个修改来解决识别出来的性能问题。你没有看错:对你要解决的识别出来的性能问题,你应该只应用一个修改到你的SQL Server。如果一次修改太多,你就不能确认,哪个修改解决了你的性能问题,还有哪个修改损害了你的性能。这对性能故障排除非常重要!
在你应用你的改变后,你可以再次测试下你的关键指标,和你建立的基线来验证下你的修改是好还是坏。在这一步你收集的心的关键指标,可以作为你新的基线。很简单,是不是?唯一你要意识到的是你要定义一个放行准则(exit criteria)。在SQL Server里,你可以反复通过这个循环。因此你要定义对于你的SQL Server,什么时候的性能才是“足够好”。
收集关键指标
当我们讨论建立基线时,总会有个问题,你应该包含哪些关键指标?对于SQL Server,有太多不同的相关性能计数器,SQL Server本身也对它的健康状况提供很多相关数据的不同DMV。因为不想让事情变得复杂,在第一步我只抓取一些东西来获得SQL Server健康状态的大致情况。
- 一些特定的SQL Server性能相关的计数器
- 等待统计(Wait Statistics)
- I/O延迟统计信息(I/O Latency Statistics)
现在我想谈下这些性能相关的计数器,下周我们会详细谈下等待统计和I/O延迟统计信息。为SQL Server抓取相关的性能计数器非常简单:你使用微软提供的免费工具PAL。
PAL工具为SQL Server提供专门的模板,在模板里你可以找到针对SQL Server的所有相关的性能计数器。可以通过设定新的所谓的数据收集(Data Collection)来直接导入模板文件到Windows性能监视器。因此你可以在1分钟内就可以配置好SQL Server相关的性能计数器!
PAL工具另一个优点是:用它你可以自动分析Windows性能监视器抓取的.blg文件。作为输出,你会得到一个很大的HTML报表,告诉你在哪方面你可能有性能问题。下图来自这个报表的简单图例。
当我进行性能调优时,第一步总是配置Windows性能监控数据收集,然后我会对它分析好几个小时。专注于分析,把力气花在这上面是个非常好的想法。
小结
今天我们详细谈了针对可能的性能问题,你如何监控你的SQL Server。这里最重要的一点是你要建立一个基线的事实。有了基线,就很容易判断部署的修改是好还是坏。没有基线,你只能瞎猜修改是不是有用的,还是没用的。
在第2部分我们介绍了微软提供的免费工具PAL。使用PAL工具很容易在Windows性能监视器里配置一个数据收集,用来抓取SQL Server性能相关的计数器。另外你也可以用这个工具来自动分析抓取的性能计数器。下周我们会详细看下SQL Server里等待和I/O延迟统计信息。
请继续关注!
围观PPT:
第21/24周 性能监控(PAL工具)的更多相关文章
- Zynga 开源其服务器性能监控分析工具 zPerfmon
流年不利的社交游戏服务商Zynga近日在官方博客宣布开源zPerfmon——该工具负责监控Zynga数以千计的社交游戏服务器.zPerfmon的源代码目前已经上传至Github. 包括Facebook ...
- linux ---性能监控(工具)
linux服务器性能监控-nmon Nmon 是一个分析aix和linux性能的免费工具,出自IBM,其采集的数据通过nmon_analyser生成报表 一.下载 官网下载地址 百度网盘 二.运行和使 ...
- Windows性能监控perfmon工具的使用和性能指标的分析
Windows性能监控工具perfmon的使用和性能指标分析 一.perfmon提供图表化的实时的性能监视器.性能日志.警报管理,能监控CPU的使用率.内存使用率.磁盘I/O(磁盘的读写速度).网络I ...
- 【性能监控-Perfmon工具】Perfmon工具使用教程
一.Perfmon工具简介 Perfmon是一款Windows自带的性能监控工具,提供了图表化的系统性能实时监视器.性能日志和警报管理.通过添加性能计数器可以实现对CPU.内存.网络.磁盘.进程等多类 ...
- MiniProfiler性能监控分析工具在.NET项目中的使用
MiniProfiler是一款针对.NET, Ruby, Go and Node.js的性能分析的轻量级程序.可以对一个页面本身,及该页面通过直接引用.Ajax.Iframe形式访问的其它页面进行监控 ...
- 开源性能监控分析工具glowroot
最近在做java性能瓶颈定位分析工具的研究,发现glowroot工具是一款相当不错的APM工具(Wonderful tool),架构简洁,部署简单,上手容易. 经过亲身搭建体验,总结了产品的架构,工具 ...
- 【性能监控-Perfmon工具】手动添加数据收集器,点击保存时需要输入用户NT AUTHORITY\SYSTEM的密码问题
发现是有的电脑会弹出这种输入用户NT AUTHORITY\SYSTEM密码的现象,有的电脑不会弹出这个对话框.......仍然没搞懂是为什么? 关键是输入windows用户登录时的密码也不对!!压根不 ...
- Go pprof性能监控
Go net/http/pprof包提供了一个在WEB项目中使用的性能监控的工具, 使用时只需要引用包: _"net/http/pprof" 然后就可以在浏览器中访问地址: htt ...
- .Net Core 2.*+ InfluxDB+Grafana+App Metrics实时性能监控
前言 .net core 2.* 实施性能监控 这个工具其实给运维 大大们用起来是更爽的.但是Grafana现在还没有找到中文版. 本文需要了解的相关技术与内容: InfluxDb(分布式时序数据库, ...
随机推荐
- 【Win10 UWP】QQ SDK(二):SDK的回调处理
上一讲,我们介绍了QQ SDK的使用方法,请看<[Win10 UWP]QQ SDK(一):SDK基本使用方法> 一. 回调的基本形式 从前面的介绍中我们知道,我们的应用和QQ客户端之间需要 ...
- 《静静的dojo》 总体教程介绍
web2.0时代,ajax技术成为整个前端开发领域的基石.大部分的书籍.博客由此切入来介绍前端类库与框架,所以dojo往往只被当做一个ajax类库来介绍,然而仅仅以此来定位dojo,无异于管中窥豹.对 ...
- MYSQL分页存储过程及事务处理
最近给客户做的一小系统是SQLSERVER的数据库,因为特殊原因要切换到MYSQL上去,切换数据库确实让人头疼的,SQLSERVER和MYSQL的存储过程还是有很大差别的,下面是我做切换时转换的MYS ...
- 将网站添加到iPhone的主屏幕上
我之前有篇文章介绍过如何将网站固定到Windows的开始菜单,并可以自定义图标.颜色以及Windows推送通知,其实Apple也有类似的功能,通过在网页的head部分添加link标记,在Safari浏 ...
- Linux-磁盘管理小结
这篇博文主要总结了Linux磁盘的一些操作,主要是硬盘的加载,分区(MBR分区和GPT分区),分区的挂载,以及swap分区的加载设置. 基础命令 df查看磁盘分区使用状况 -l //仅显示本地磁盘(默 ...
- okhttp教程——起步篇
okhttp教程--起步篇 这篇文章主要总结Android著名网络框架-okhttp的基础使用,后续可能会有关于他的高级使用. okhttp是什么 okhttp是Android端的一个Http客户端, ...
- 打包上传成功, itunes connect 不出现上传的版本
由于有一次感觉build setting 里 code signing identity设置证书有点乱,有些已经用不到了,就想把那些删除 于是我找到了所有证书的那个文件夹(进入所有证书的那个文件夹), ...
- Node.js与Sails~方法拦截器policies
回到目录 policies sails的方法拦截器类似于.net mvc里的Filter,即它可以作用在controller的action上,在服务器响应指定action之前,对这个action进行拦 ...
- 理解 Lua 的那些坑爹特性
按:最近看到了依云的文章,一方面,为Lua被人误解而感到十分难过,另一方面,也为我的好友, 依云没有能够体会到Lua的绝妙和优雅之处而感到很遗憾,因此我写了这篇文章,逐条款地说明了 依云理解中出现的一 ...
- IOS笔记045-UIDatePicker和UIPickerView
这是两种可以上下滚动的控件. 这是UIDatePicker,可以显示日期和时间. 这个是UIPickerView,显示类似几个选择项的界面. 注意点:PickerView的高度不能改,默认162,Pi ...