nGrinder詳細介紹及性能工具對比(引用)

1、The Grinder

一、The Grinder是一個基於Java的開源性能測試框架,經過多個agent負載機很方便的進行分佈式測試。

 

二、主要特性:

  • 能夠測試任何java代碼,包括各類經常使用的接口java

    • 如HTTP web servers, SOAP和REST web services,還有客戶端服務器RMI、JMS、EJBs等,還支持自定義協議。
  • 測試腳本使用python和Clojure語言
  • 成熟的HTTP協議支持:python

    • 自動管理客戶端鏈接和cookies,SSL代理;
    • 支持錄製腳本,可以記錄並回放瀏覽器和網站之間的複雜交互。
  • 包括console和agent端

三、不足

  • 一次只能運行一個測試
  • 沒有測試歷史記錄
  • 沒有圖形化的測試報告

2、nGrinder

nGrinder是基於Grinder的開源的web性能測試平臺,由韓國最大互聯網公司NHN公司的開發團隊進行了從新設計和完善。

特性:開源、易用、高可用、可擴展web

 

一、nGrinder 在 Grinder 的基礎上:

  • 實現多測試並行
  • 基於web的管理
  • 實現cluster
  • 內置svn,方便的腳本編輯、管理
  • 增長支持Groovy腳本,相對於Jython,能夠啓動更多的虛擬用戶
  • 使用改造過的 JUnit 框架,比Grinder腳本強大得多
  • 實現對目標服務器的監控
  • 插件系統擴展

二、工做原理

  • 由一個控制端controller和多個代理端agent組成,經過控制端(瀏覽器訪問)創建測試場景,而後分發到代理端進行壓力測試。
  • 用戶按照必定規範編寫測試腳本,controller會將腳本以及須要的資源分發到agent,用jython執行。
  • 在腳本執行的過程當中收集運行狀況、相應時間、測試目標服務器的運行狀況等。而且保存這些數據生成測試報告,經過動態圖和數據表的形式展現出來。用戶能夠方便的看到TPS、被測服務器的CPU和內存等狀況。

3、LoadRunner JMeter 與 nGrinder對比

一、Loadrunner

  • 基於UI操做,容易上手。早期很流行,功能強大,可是太笨重,安裝很麻煩。
  • 不開源,擴展性不高,收費貴。日後的方向確定是客戶端工具逐步向平臺化發展,因此已經慢慢被替代了。

二、JMeter

  • 基於UI操做,容易上手,可是編程能力較弱(使用beanshell腳本語言)。
  • 其次JMeter基於線程,模擬數千用戶幾乎不可能。

三、nGrinder

  • 單節點支持3000併發、支持分佈式、可監控被測服務器、可錄製腳本、開源、平臺化。
比較點 JMeter Ngrinder LoadRunner
實現語言 Java java/python java/VB/C/.NET
使用方式 C/S或Command B/S B/S
支持分佈式 master/slave controller/agent master/slave
資源監控 monitor/plugin,若是二開,須要查找plugin的源碼 monitor方式,有直接可用的源碼 自帶資源監控功能
社區活躍度 文檔完善 有中文社區 網上資料和相關培訓不少,購買正版還能夠獲得技術支持
是否須要編碼 基本不須要 須要,Jython/Groovy 須要
腳本的維護 本地 內置SVN 本地
腳本錄製 可以使用BadBoy進行錄製 可經過PTS插件進行錄製 自帶錄製功能
可擴展性 可增長plugin,輸出結果能夠再加工 可增長plugin 經過擴展函數庫實現
安裝 簡單,解壓便可 簡單,能夠下載安裝包或綠色包解壓 安裝包比較大,安裝繁瑣

 

引用連接: https://segmentfault.com/a/1190000017022784?utm_source=tag-newestshell

相關文章
相關標籤/搜索