第21/24周 性能监控(PAL工具)
大家好,歡迎來(lái)到性能調(diào)優(yōu)培訓(xùn)的最后一個(gè)月。在過(guò)去的5個(gè)月里,我們談了SQL Server的各種性能相關(guān)的話題,包括性能調(diào)優(yōu)的技術(shù)和問(wèn)題。
但當(dāng)在你面前,SQL Server沒(méi)有按你預(yù)想的運(yùn)行時(shí),你會(huì)怎么辦?為了幫你處理這個(gè)情況,今天我們會(huì)談到下性能監(jiān)控技術(shù),下周我們會(huì)詳細(xì)談到SQL Server里所謂的等待統(tǒng)計(jì)(Wait Statistics)。現(xiàn)在開始我們的性能監(jiān)控。
讓我們建立一個(gè)基線!
很多人坐在他們的SQL Server前,知道它的性能非常差,卻不知道如何找出潛在的根源,也不知道如何解決它。對(duì)這個(gè)問(wèn)題,我的答案非常簡(jiǎn)單:監(jiān)控并收集當(dāng)前情況的信息,和你的基線(baseline)比較,識(shí)別出最突出的性能瓶頸。是的,你沒(méi)聽錯(cuò):你需要建立基線來(lái)識(shí)別性能問(wèn)題,不然的話就是在瞎猜。下圖顯示了在建立的基線上,在SQL Server里,一個(gè)非常簡(jiǎn)單的識(shí)別并解決性能問(wèn)題的方法。
?
這個(gè)方法的思路非常簡(jiǎn)單。在第1步里你需要收集一些SQL Server的關(guān)鍵指標(biāo)。這些關(guān)鍵指標(biāo)作為你的初始基線。在下一部分我會(huì)談下你應(yīng)該收集的關(guān)鍵指標(biāo)。在你建立了你的基線后,你可以開始在抓取的數(shù)據(jù)里識(shí)別最常見的性能問(wèn)題。在下一部分你會(huì)看到,有一些免費(fèi)的工具,可以用它來(lái)自動(dòng)完成這個(gè)操作。
最后,你一次只做一個(gè)修改來(lái)解決識(shí)別出來(lái)的性能問(wèn)題。你沒(méi)有看錯(cuò):對(duì)你要解決的識(shí)別出來(lái)的性能問(wèn)題,你應(yīng)該只應(yīng)用一個(gè)修改到你的SQL Server。如果一次修改太多,你就不能確認(rèn),哪個(gè)修改解決了你的性能問(wèn)題,還有哪個(gè)修改損害了你的性能。這對(duì)性能故障排除非常重要!
在你應(yīng)用你的改變后,你可以再次測(cè)試下你的關(guān)鍵指標(biāo),和你建立的基線來(lái)驗(yàn)證下你的修改是好還是壞。在這一步你收集的心的關(guān)鍵指標(biāo),可以作為你新的基線。很簡(jiǎn)單,是不是?唯一你要意識(shí)到的是你要定義一個(gè)放行準(zhǔn)則(exit criteria)。在SQL Server里,你可以反復(fù)通過(guò)這個(gè)循環(huán)。因此你要定義對(duì)于你的SQL Server,什么時(shí)候的性能才是“足夠好”。
收集關(guān)鍵指標(biāo)
當(dāng)我們討論建立基線時(shí),總會(huì)有個(gè)問(wèn)題,你應(yīng)該包含哪些關(guān)鍵指標(biāo)?對(duì)于SQL Server,有太多不同的相關(guān)性能計(jì)數(shù)器,SQL Server本身也對(duì)它的健康狀況提供很多相關(guān)數(shù)據(jù)的不同DMV。因?yàn)椴幌胱屖虑樽兊脧?fù)雜,在第一步我只抓取一些東西來(lái)獲得SQL Server健康狀態(tài)的大致情況。
現(xiàn)在我想談下這些性能相關(guān)的計(jì)數(shù)器,下周我們會(huì)詳細(xì)談下等待統(tǒng)計(jì)和I/O延遲統(tǒng)計(jì)信息。為SQL Server抓取相關(guān)的性能計(jì)數(shù)器非常簡(jiǎn)單:你使用微軟提供的免費(fèi)工具PAL。
PAL工具為SQL Server提供專門的模板,在模板里你可以找到針對(duì)SQL Server的所有相關(guān)的性能計(jì)數(shù)器。可以通過(guò)設(shè)定新的所謂的數(shù)據(jù)收集(Data Collection)來(lái)直接導(dǎo)入模板文件到Windows性能監(jiān)視器。因此你可以在1分鐘內(nèi)就可以配置好SQL Server相關(guān)的性能計(jì)數(shù)器!
PAL工具另一個(gè)優(yōu)點(diǎn)是:用它你可以自動(dòng)分析Windows性能監(jiān)視器抓取的.blg文件。作為輸出,你會(huì)得到一個(gè)很大的HTML報(bào)表,告訴你在哪方面你可能有性能問(wèn)題。下圖來(lái)自這個(gè)報(bào)表的簡(jiǎn)單圖例。
?
當(dāng)我進(jìn)行性能調(diào)優(yōu)時(shí),第一步總是配置Windows性能監(jiān)控?cái)?shù)據(jù)收集,然后我會(huì)對(duì)它分析好幾個(gè)小時(shí)。專注于分析,把力氣花在這上面是個(gè)非常好的想法。
小結(jié)
今天我們?cè)敿?xì)談了針對(duì)可能的性能問(wèn)題,你如何監(jiān)控你的SQL Server。這里最重要的一點(diǎn)是你要建立一個(gè)基線的事實(shí)。有了基線,就很容易判斷部署的修改是好還是壞。沒(méi)有基線,你只能瞎猜修改是不是有用的,還是沒(méi)用的。
在第2部分我們介紹了微軟提供的免費(fèi)工具PAL。使用PAL工具很容易在Windows性能監(jiān)視器里配置一個(gè)數(shù)據(jù)收集,用來(lái)抓取SQL Server性能相關(guān)的計(jì)數(shù)器。另外你也可以用這個(gè)工具來(lái)自動(dòng)分析抓取的性能計(jì)數(shù)器。下周我們會(huì)詳細(xì)看下SQL Server里等待和I/O延遲統(tǒng)計(jì)信息。
請(qǐng)繼續(xù)關(guān)注!
圍觀PPT:
1117_21_PAL_Tools.rar
轉(zhuǎn)載于:https://www.cnblogs.com/woodytu/p/4743175.html
總結(jié)
以上是生活随笔為你收集整理的第21/24周 性能监控(PAL工具)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: TCP/IP详解 卷一(第十一章 UDP
- 下一篇: HDU2602-Bone Collect