[發明專利]一種壓力測試的方法和裝置在審
| 申請號: | 201210238208.8 | 申請日: | 2012-07-10 |
| 公開(公告)號: | CN103544098A | 公開(公告)日: | 2014-01-29 |
| 發明(設計)人: | 張亮;朱星;陶仕敏 | 申請(專利權)人: | 百度在線網絡技術(北京)有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 北京鴻德海業知識產權代理事務所(普通合伙) 11412 | 代理人: | 袁媛 |
| 地址: | 100085 北京*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 壓力 測試 方法 裝置 | ||
【技術領域】
本發明涉及計算機應用技術領域,特別涉及一種壓力測試的方法和裝置。
【背景技術】
壓力測試是軟件測試工作的重要一部分,用于測試程序的處理能力。通常在進行壓力測試時,需要一個壓力工具發送數據包給被測試程序進行處理,查看被測試程序在當前壓力下的性能。
現有無論是應用于windows還是Linux的壓力測試工具,均采用以設定的時間間隔發送設定數量的數據包的方式進行壓力測試,但這種方式往往很難滿足高測試壓力需求,也很難將網卡的吞吐量用盡,即很難達到物理網卡的極限。
【發明內容】
本發明提供了一種壓力測試的方法和裝置,以便于滿足高測試壓力的需求,使測試壓力達到物理網卡的極限成為可能。
具體技術方案如下:
一種壓力測試的方法,該方法包括:
進行初始化,包括:初始化epoll的讀連接池和寫連接池,以及,依據預先設置的用戶定制參數申請數據區緩存,并從壓力文件中加載數據包至所述緩存;
對于與被測試模塊建立的連接設置采用電平觸發LT模式讀數據和寫數據并設置讀數據和寫數據的觸發事件,將所述連接添加到讀連接池和寫連接池;
創建的統計線程定時統計壓力狀況,并定時通過設置標識繼續發送的全局變量有效來激發壓力數據的發送;
創建的發送壓力線程監聽到寫數據的觸發事件后,如果標識繼續發送的全局變量有效,則輪詢發送緩存中的壓力數據至被測試模塊直至達到本發送周期的壓力個數,將所述全局變量設為無效,繼續等待所述全局變量有效;
創建的接收分析線程監聽到讀數據的觸發事件后,將接收到的來自所述被測試模塊的數據包寫入接收文件。
根據本發明一優選實施例,所述壓力文件由二進制數據包構成,還包括各二進制數據包的大小信息。
根據本發明一優選實施例,在所述初始化之前,該方法還包括:
打開文件句柄數限制,將終端線路掛斷、中斷進程、軟件終止信號以及建立核心文件終止進程信號中的至少一種添加至觸發強制退出或異常退出的信號。
根據本發明一優選實施例,所述依據預先設置的用戶定制參數申請數據區緩存,并從壓力文件中加載數據包至所述緩存為:依據用戶定制參數中每次輪詢發送的數據包個數申請數據區緩存,從壓力文件中讀取對應個數的數據包載入所述緩存,并進一步申請索引緩存區為緩存中的壓力數據建立索引;
所述發送壓力線程在輪詢發送緩存中壓力數據時,依據所述索引發送緩存中的各數據包。
根據本發明一優選實施例,該方法還包括:
創建的修復連接線程定期清理斷開的連接并補充建立新連接以維護與被測試模塊的連接數量保持穩定壓力。
根據本發明一優選實施例,所述寫數據的觸發事件包括與被測試模塊的連接建立或socket寫緩沖區未寫滿的可寫狀態;所述讀數據的觸發事件包括接收到被測試模塊返回的數據包。
根據本發明一優選實施例,所述發送壓力線程如果確定本次壓力測試發送的壓力數據達到用戶定制參數中最多發送的數據包個數,則結束本次壓力測試,刪除用戶定制參數并釋放本次壓力測試占用的系統資源。
一種壓力測試的裝置,該裝置包括:
初始化單元,用于初始化epoll的讀連接池和寫連接池,以及,依據預先設置的用戶定制參數申請數據區緩存,并從壓力文件中加載數據包至所述緩存;
連接設置單元,用于對與被測試模塊建立的連接設置采用電平觸發LT模式讀數據和寫數據并設置讀數據和寫數據的觸發事件,將所述連接添加到讀連接池和寫連接池;
統計單元,用于定時統計壓力狀況,并定時通過設置標識繼續發送的全局變量有效來激發壓力數據的發送;
發送壓力單元,用于監聽到寫數據的觸發事件后,如果標識繼續發送的全局變量有效,則輪詢發送緩存中的壓力數據至被測試模塊直至達到本發送周期的壓力個數,將所述全局變量設為無效,繼續等待所述全局變量有效;
接收分析線程,用于監聽到讀數據的觸發事件后,將接收到的來自所述被測試模塊的數據包寫入接收文件。
根據本發明一優選實施例,所述壓力文件由二進制數據包構成,還包括各二進制數據包的大小信息。
根據本發明一優選實施例,該裝置還包括:預處理單元,用于打開文件句柄數限制,將終端線路掛斷、中斷進程、軟件終止信號以及建立核心文件終止進程信號中的至少一種添加至觸發強制退出或異常退出的信號。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于百度在線網絡技術(北京)有限公司,未經百度在線網絡技術(北京)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210238208.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:切片機的碎片收集裝置
- 下一篇:一種生產石膏砌塊的自動攪拌澆注裝置





