亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 2057 | 回復(fù): 0
打印 上一主題 下一主題

easy_runner一個簡單的壓測程序 [復(fù)制鏈接]

論壇徽章:
2
2015年辭舊歲徽章
日期:2015-03-03 16:54:1515-16賽季CBA聯(lián)賽之上海
日期:2016-05-05 09:45:14
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2011-12-23 02:33 |只看該作者 |倒序?yàn)g覽

這次再公開一個小工具 easy_runner 一個來用做壓測的小工具

我主要用來做MySQL壓測的時候,直接壓業(yè)務(wù)端用的.

程序很簡單,總共不到400來行,推薦程序員自己壓測用,比LoadRunner這種重型壓測工具使用起來方便多了

下載可以到 http://code.google.com/p/easy-runner/ checkout出源碼來

使用說明見 http://code.google.com/p/easy-runner/wiki/Usage

介紹

一個Python實(shí)現(xiàn)的簡單壓測工具

Details

Easy Runner主要實(shí)現(xiàn)了多線程壓測,類似LoadRunner?,能得出QPS和RT,并能通過matlibplot畫出曲線圖.

特性
  1. 支持多scenario同時執(zhí)行
  2. 可為不同scenario設(shè)置think time和線程數(shù)
  3. 支持warming
  4. 可畫出性能曲線
  5. 使用方便,啟動迅速,一條命令即可開始壓測
優(yōu)勢
  1. scenario直接使用python編寫scenario,使天然支持多協(xié)議
  2. Easy Runner一共300來行代碼,維護(hù)方便
劣勢
  1. 是通過多線程來加大壓力,對客戶端要求較高,不能有太多的線程數(shù)
使用說明 設(shè)置篇

見easy_runner下的setting.py進(jìn)行配置

  • MONITOR_INTERVAL = 1 #設(shè)置性能監(jiān)控的時間間隔,默認(rèn)為1s,設(shè)的越小數(shù)據(jù)越正確
  • SCENARIOS_PATH=(“./scenario”,) #設(shè)置劇本的存放路徑,可以設(shè)置多個路徑,程序會從設(shè)置的路徑載入劇本
  • LOG_PATH_AND_FILE_NAME = “D:\\tmp\\runner.log” #設(shè)置log存放路徑,壓測信息都會記錄在這個log下,以便分析和作圖
  • PIC_SAVE_PATH_AND_PREFIX = “D:\\tmp\\pic” #設(shè)置性能曲線的生成路徑和文件前綴.可設(shè)為None,如果為None,生成的圖片會直接以窗口方式打開
  • THREAD_RULE=(10,3) #線程預(yù)熱規(guī)則,前一個參數(shù)表示預(yù)熱間隔,后一個參數(shù)表示每次預(yù)熱會啟動的線程數(shù),可設(shè)為None,如果為None,則無預(yù)熱

劇本編寫篇

例子見附件中的easy_runner\scenario\example.py 這是一個壓測劇本 其中

  • thread_num=200 為為這個劇本開啟的并發(fā)線程數(shù)
  • think_time = 0 為這個劇本執(zhí)行時的think time 單位為秒
  • run_count = 1000 為這個腳本的執(zhí)行次數(shù)
  • name=”update” 指定這個劇本的名字,如果不同的劇本使用相同的名字,那么在最后做性能曲線時,相同名字的數(shù)據(jù)會進(jìn)行合并顯示

  • def init(self): 劇本初始化函數(shù)
  • def action(self): 劇本會被重復(fù)執(zhí)行的函數(shù)..需要返回True為成功,False為失敗
  • def destory(self): 劇本執(zhí)行完后的資源釋放函數(shù)

注意,劇本的類名必須是class Scenario(core.scenario.abstract_scenario):

使用篇

如果已經(jīng)做好了設(shè)置,也編寫好了腳本即可以開始壓測了. 開始壓測很簡單,直接在命令行鍵入python starter.py 就會開始壓測. 這個時候會根據(jù)MONITOR_INTERVAL設(shè)置的時間間隔,直接輸出QPS和RT信息,并同時開始記log (注:如果log已存在的話,原log會被重命名) 如果需要停止壓測,在命令行直接輸入q 回車 即可結(jié)束壓測.

生成圖形篇

生成圖形也很簡單,直接在命令行鍵入python plot.py 就是自動分析剛才的log文件生成圖形(plot.py需要matlibplot的支持~)

圖形樣例如下:

    • 返回成功的QPS:

    • 返回失敗的QPS:

    • 總QPS(失敗+成功):

    • 響應(yīng)時間

 
轉(zhuǎn):http://blog.zephyrleaves.net/?p=292
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP