IM分布式壓力測試工具設計(類loadrunner)

來源:互聯網
上載者:User
簡單版

實現目標:可以分布式測試自己業務,高度定製
原理:通過zookeeper進行配置和調度,角色分為二個,主控和分布測試單元。 分布測試單元

功能:接收主控的任務並且執行,主要功能為啟動和接收執行任務
啟動
1、 啟動的時候註冊到zookeeper上
2、 監聽對應的配置節點(需要根據配置來啟動任務)
3、 監聽對應的隊列,用來和主控制進行訊息通訊
接收任務
1、從配置節點上獲得對應要執行的參數,包括啟動的線程,對應的每個線程執行的時間間隔和彙報通知時間
2、接收任務執行
3、通過隊列,通知對應主控節點進行通訊(通訊協定包括,本節點對應資訊,任務執行的階段資訊)
4、任務執行完成通過隊列匯總到主控
痛點
1、關於集合點的設定和高度一致性難,但是實際上測試可能沒那麼嚴格也可以接受
2、關於分布式測試節點出現各種異常的情況下如何處理也是一個痛點 主控節點

主控節點功能:分配任務執行,並且查看任務進行,進行任務匯總。
1、分配任務:配置相關的任務,配置完成後,啟動相關節點啟動任務
2、任務查看:定時從隊列上查看當前各個節點的執行情況
3、任務匯總:如果所有任務執行結束了,將對應的任務匯總輸出對應的報告 複雜版

實現目標:可以定製擴充業務,直接執行就可以
需要解決的核心問題
1、任務通過jar包的樣式分發到各個節點,放置在lib目錄下
2、新任務使用定製的Classloader從lib上載入對應的jar包
3、對應實現的業務的jar包要高度抽象成一套可擴充的介面
可以做成一個產品,如果公司測試業務有需求的話倒是可以,一般公司沒那個耐心和投入 總結

1、複雜版做的話,是一個長期的工程,簡單版的可以在滿足研發非測試的絕大多數的要求
2、單個機器上啟動多個java的用戶端壓力測試程式也可以做一部分壓力測試工作,但是還遠遠不足。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.