中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何分析用pt-stalk定位MySQL短暫的性能問題

發布時間:2021-11-08 18:52:49 來源:億速云 閱讀:136 作者:柒染 欄目:建站服務器

本篇文章為大家展示了如何分析用pt-stalk定位MySQL短暫的性能問題,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

【背景】

MySQL出現短暫的3-30秒的性能問題,一般的監控工具較難抓到現場,很難準確定位問題原因。

對于這類需求,我們日常的MySQL分析工具都有些不足的地方:

1、 性能監控工具,目前粒度是分鐘級,無法反應秒級的性能波動;

2、 MySQL Performance_schema工具采集是3秒落地10000行記錄,對于QPS大于3000以上的服務器采集會丟失數據;

Performance_schema數據通常用來分析語句級的性能問題,比如CPU高消耗,掃描行數等語句問題,對于系統內部mutex,lock,thread等資源競爭的問題無法定位。

3、 Table DML工具(5分鐘粒度)

4、 Slow Log記錄大于1秒的慢查詢,反應的可能是果,而不是因

5、 MySQL Guard工具實現是依賴報警系統觸發,一般對于持續在1分鐘以上的問題可以抓取到現場

前面擴展過一個功能,對高CPU的監控,粒度可以到10秒左右

pt-stalk工具可以解決更細粒度的故障現場采集,守護進程的方式試用了一下,可以幫助我們解決一些問題。

【pt-stalk工具的使用】

嘗試用pt-stalk工具做故障現場的快照采集

1、自定義腳本,定義CPU作為觸發條件

function trg_plugin(){

a=$(sar 1 1 | grep -i "Average:"| awk '{print $8}');echo 100 - $a |bc

}

2、用pt-stalk開啟守護進程,下面命令實現了用自定義的pt_cpu.sh腳本做為判斷條件,當CPU的值(100-%idle)大于50,判斷的間隔時間為1秒,連續3次滿足條件時觸發快照采集,觸發后會sleep 60秒

pt-stalk --daemonize --dest=/tmp/log/pt-stalk --user= --password= --port= --function=/tmp/pt_cpu.sh --variable highcpu --cycles=3 --interval=1 --threshold 50 --sleep=60 --log=/var/log/pt-stalk.log

具體的參數可參考man pt-stalk。

【案例分析】

有臺服務器出現短暫的線程和CPU告警的問題,現在每天在9點多都有CPU的告警,但持續時間較短,MySQL Guard工具很難采集到現場。

按照之前性能計數器反應的指標,猜測是由于binlog備份導致的IO上升,又導致了線程積壓,但實際不是這個原因,binlog備份時間重合只是巧合。

在這臺服務器開啟pt-stalk守護進程后,今天早上CPU告警時觸發了采集

如何分析用pt-stalk定位MySQL短暫的性能問題

抓取的快照信息如下:

如何分析用pt-stalk定位MySQL短暫的性能問題

依據故障快照信息,再結合slow log和performance_schema語句明細,有足夠的信息可以定位出問題原因。

1、在9:01分CPU出現上升

如何分析用pt-stalk定位MySQL短暫的性能問題

2、pt-stalk采集的CPU信息記錄了更細粒度,連續30秒的信息,其中連續30秒CPU sys占比都在80%以上,通常是并發線程較高,context switch過高導致的sys消耗

如何分析用pt-stalk定位MySQL短暫的性能問題

3、連續30秒的Threads_running確實比較高

如何分析用pt-stalk定位MySQL短暫的性能問題

4、進一步分析,容易找到問題原因是由于每天9:00定時job運行,有一句高并發的慢查詢SQL導致了線程積壓

如何分析用pt-stalk定位MySQL短暫的性能問題

6、 慢查詢SQL是由于缺失索引導致,補建索引后再觀察

【pt-stalk的性能】

正常情況下守護進程的性能開銷并不大,建議可以在有需要排障時再定制開啟。下面是它的處理邏輯

如何分析用pt-stalk定位MySQL短暫的性能問題

上述內容就是如何分析用pt-stalk定位MySQL短暫的性能問題,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

朔州市| 吴堡县| 寿阳县| 蓝山县| 正安县| 偃师市| 河津市| 洛扎县| 新源县| 商城县| 连云港市| 海南省| 习水县| 渭南市| 阿荣旗| 武陟县| 夏津县| 眉山市| 郓城县| 福建省| 呼玛县| 彭水| 尖扎县| 布尔津县| 凤翔县| 防城港市| 长葛市| 湖州市| 噶尔县| 进贤县| 金塔县| 长垣县| 武安市| 渝中区| 河曲县| 毕节市| 历史| 广宁县| 富川| 蚌埠市| 长葛市|