亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測(cè)試 > 開(kāi)源軟件測(cè)試 > 開(kāi)源性能測(cè)試工具 > Jmeter
jmeter資源監(jiān)控器開(kāi)發(fā)??進(jìn)入jmeter的源碼世界
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/3/15 14:51:24 ] 推薦標(biāo)簽:

現(xiàn)在越來(lái)越多人使用了。面對(duì)LoadRunner高昂的價(jià)格,免費(fèi)的jmeter真的是讓我們很是感動(dòng)啊。眼淚嘩嘩地。

于是乎現(xiàn)在關(guān)于jmeter應(yīng)用的各種入門(mén)教程啊,手冊(cè)翻譯啊,技巧集錦什么的,也越來(lái)越多了。不過(guò)大家可能感受想要而又要不到的是資源監(jiān)控,比如windows、linux的cpu,memory等。其實(shí)有些高手已經(jīng)自己開(kāi)發(fā)了jmeter的plugin用于監(jiān)控了,但是似乎目前還沒(méi)有人share出來(lái),這些高手呢,相信不會(huì)是本文的主要讀者了。
日前接受了任務(wù),希望能用jmeter來(lái)做一些性能測(cè)試。少不得要面對(duì)jmeter缺乏資源監(jiān)控的問(wèn)題:有個(gè)監(jiān)視器,但只能利用tomcat的status頁(yè)監(jiān)視jvm的內(nèi)存和線程情況,功能單薄得像霓裳仙子的那件衣服,馬上要露點(diǎn)了。
看了一下jmeter監(jiān)視器的實(shí)現(xiàn)思路,是解析tomcat的manage上status的xml文件來(lái)獲得數(shù)據(jù),再展現(xiàn)到j(luò)meter的面板上。于是想到,如果通過(guò)修改監(jiān)視器代碼來(lái)解析和展現(xiàn)自己想要的內(nèi)容,再實(shí)現(xiàn)動(dòng)態(tài)的更新服務(wù)器上的xml文件——獲取到資源數(shù)據(jù)寫(xiě)進(jìn)去,這樣jmeter不可以做到監(jiān)控各種服務(wù)器了么?
好,那么先下手分析jmeter的監(jiān)控器代碼。查了jmeter的開(kāi)發(fā)手冊(cè),監(jiān)視器代碼沒(méi)有跟其它組件一起,而是單獨(dú)的monitor代碼。源碼分析簡(jiǎn)述如下:

監(jiān)控器代碼srcmonitorcomponentsorgapachejmeter
文件:
monitorutil
       MemoryBenchmark.java
       Stats.java
visualizers
       MonitorAclearcase/" target="_blank" >ccumModel.java
       MonitorGraph.java
       MonitorGuiListener.java
       MonitorHealthPanel.java
       MonitorHealthVisualizer.java
       MonitorListener.java
       MonitorModel.java
       MonitorPerformancePanel.java
       MonitorStats.java
       MonitorTabPane.java
       ServerPanel.java

Stats.java:計(jì)算解析得到的參數(shù)
public static int calculateLoad(Status stat)
public static int calculateStatus(Status stat)
public static int calculateMemoryLoad(Status stat)
public static int calculateThreadLoad(Status stat)

MonitorPerformancePanel.java:監(jiān)視器面板上的信息

MonitorStats.java:監(jiān)視器輸入數(shù)據(jù)
       private static final String HEALTH = "stats.health";
       private static final String LOAD = "stats.load";
       private static final String CPULOAD = "stats.cpuload";
       private static final String MEMLOAD = "stats.memload";
       private static final String THREADLOAD = "stats.threadload";
斜體字部分是jmeter棄置不用的了,原因也寫(xiě)在MonitorGraph.java的注釋里:”TODO is this needed? It's never read“老外是tmd能扯啊~

MonitorModel.java:生成數(shù)據(jù)模型,繼承自MonitorStats

MonitorGraph.java:圖像繪制
private void drawSample(int x, MonitorModel model, Graphics g, MonitorModel last)

MemoryBenchmark.java:數(shù)據(jù)基準(zhǔn)
                            MonitorStats mstats = new MonitorStats(Stats.calculateStatus(st), Stats.calculateLoad(st), Stats.calculateCpuLoad(st), Stats
                                          .calculateMemoryLoad(st), Stats.calculateThreadLoad(st), "localhost", "8080", "http", System
                                          .currentTimeMillis());
                            MonitorModel monmodel = new MonitorModel(mstats);
                            objs.add(monmodel);

MonitorAccumModel.java:監(jiān)視器數(shù)據(jù)操作相關(guān)


圖片:srccoreorgapachejmeterimages
資源文件(多語(yǔ)言):srccoreorgapachejmeter esources

軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠(chéng)聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 久久精品a一国产成人免费网站 | 日本xxxxx高清 | 日本欧美久久久久免费播放网 | 福利120秒| 欧美一区二区视频在线观看 | 一级黄色在线视频 | 免费黄色小网站 | 国产成人综合日韩精品无 | 欧美呦交 | 午夜免费理论片在线看 | www中文字幕在线观看 | 国产精品成人观看视频国产 | 欧美日韩一区二区不卡 | 狠狠色丁香婷婷综合尤物 | 亚洲免费大全 | 午夜刺激爽爽视频免费观看 | 人人搞人人干 | 麻豆一区二区三区在线观看 | 全部免费的毛片视频观看 | 亚洲国产精品日韩高清秒播 | 一级一级特黄女人精品毛片视频 | 成人激情小视频 | 91精品国产91久久久久青草 | 天天插天天干 | 欧美日韩综合在线视频免费看 | 欧美 国产 日韩 第一页 | 色原网 | 女性特黄一级毛片 | 成在线人免费视频一区二区三区 | 羞羞视频导航 | 日本午夜精品一本在线观看 | 国产精品二区高清在线 | 中日韩精品视频在线观看 | 草草影院在线观看视频 | 欧美人与牲动交a欧美精品 欧美人与日本人xx在线视频 | 青青成人福利国产在线视频 | 天堂网一区 | 亚洲欧美一区二区三区在线观看 | 久久精品国产半推半就 | 国产精品视频无圣光一区 | 日韩日韩日韩日韩 |