CAT 是基于 Java 開發(fā)的實(shí)時(shí)應(yīng)用監(jiān)控平臺(tái)。官方文檔:https://github.com/dianping/cat/tree/master/cat-doc
CAT提供以下幾種報(bào)表:
Transaction報(bào)表 一段代碼運(yùn)行時(shí)間、次數(shù)粱哼,比如URL坎弯、Cache桂肌、SQL執(zhí)行次數(shù)狰闪,QPS和響應(yīng)時(shí)間
Event報(bào)表 一行代碼運(yùn)行次數(shù)宪肖,比如出現(xiàn)一個(gè)異常
Problem報(bào)表 根據(jù)Transaction/Event數(shù)據(jù)分析出來系統(tǒng)可能出現(xiàn)的異常表制,包括訪問較慢的程序等
Heartbeat報(bào)表 JVM內(nèi)部一些狀態(tài)信息,比如Memory控乾,Thread等
Business報(bào)表 業(yè)務(wù)監(jiān)控報(bào)表么介,比如訂單指標(biāo)。與Transaction蜕衡、Event壤短、Problem不同,Business更偏向于宏觀上的指標(biāo)衷咽,另外三者偏向于微觀代碼的執(zhí)行情況
概述
CAT是需要導(dǎo)包引入的鸽扁,同時(shí)也要手動(dòng)埋點(diǎn)的,默認(rèn)有自己的維度镶骗,同時(shí)也可以自定義維度桶现,同時(shí)CAT帶來的損耗肯定是有的,但是官方已經(jīng)盡量降低損益了鼎姊。
一般核心就是Transaction
和Event
骡和,前者注重的是調(diào)用的時(shí)間,后者注重的是調(diào)用的次數(shù)相寇。
tp95 和 tp99
95line表示95%的請(qǐng)求的響應(yīng)時(shí)間比參考值要小慰于,99line表示99.9%的響應(yīng)時(shí)間比參考值要小。
QPS
我們會(huì)用每秒查詢率來衡量服務(wù)器的性能唤衫,其即為QPS婆赠。對(duì)應(yīng)fetches/sec,即每秒的響應(yīng)請(qǐng)求數(shù)佳励,也即是最大吞吐能力休里。
每臺(tái)機(jī)子的QPS肯定是有限的蛆挫,如果突然間機(jī)器的QPS上去了,代表是不是流量負(fù)載過多了妙黍;QPS突然下去了悴侵,是不是什么操作(如慢查詢)拖慢了速度。
計(jì)算關(guān)系:QPS = 并發(fā)量 / 平均響應(yīng)時(shí)間
std
STD是標(biāo)準(zhǔn)偏差值(Standard Deviation)拭嫁,主要用來反應(yīng)樣本空間分布情況可免。
各個(gè)樣本越接近平均值,STD越小做粤,說明系統(tǒng)測(cè)試時(shí)的原始數(shù)據(jù)分布比較集中浇借,基本接近平均值。所以這個(gè)值很小時(shí)驮宴,一定程度上可以表明系統(tǒng)更加穩(wěn)定逮刨。
計(jì)算方法如下:
S2 = Σ( Xi ? X )2 / n ? 1
式中X : 樣本平均值
S : 標(biāo)準(zhǔn)偏差
n : 樣本數(shù)量