[發明專利]數據庫壓力測試方法、裝置及系統在審
| 申請號: | 202010725194.7 | 申請日: | 2020-07-24 |
| 公開(公告)號: | CN112000466A | 公開(公告)日: | 2020-11-27 |
| 發明(設計)人: | 不公告發明人 | 申請(專利權)人: | 周志燕 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50;G06F9/48 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 100104 北京市順義*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據庫 壓力 測試 方法 裝置 系統 | ||
1.一種數據庫壓力測試方法,其特征在于,包括:
接收壓力測試參數并判斷所述壓力測試參數是否滿足設定條件;
若所述壓力測試參數滿足設定條件,啟動主線程并判斷主線程資源是否充足;
若主線程資源充足,則啟動計時器計時并在設定個線程的設定個管道中創建多個子任務;
在計時器計時的設定計時內,基于所述設定個線程的設定個管道中創建的多個子任務讀取數據庫結構化查詢語言SQL文本,基于所述結構化查詢語言文本請求數據庫,并計算回寫數據;
在設定時間內基于所述回寫數據統計分析壓測數據。
2.根據權利要求1所述的方法,其特征在于,在如果主線程資源充足,則啟動計時器并在設定個線程的設定個管道中創建多個子任務包括:
以協程的方式創建子任務進程;
更新工作狀態為真值到子任務工作狀態的單向鏈表的數據結構中,然后進入無限循環體中,對所述SQL文本進行無限輪訓訪問,用于獲取所述SQL語句進行壓力測試;
如果訪問數據庫成功則將訪問數據庫的響應時間和訪問次數更新在壓測結果的單向鏈表中,下次訪問數據庫如果還是成功直接追加更新消耗時間和每秒向服務發送的請求數量峰值QPS值,使其子任務的單向鏈表數據結構始終維持在設定的內存空間中;
如果連接數據庫、執行數據庫超時原因導致失敗,子任務追加更新錯誤計數器的值ErrCount,直到子任務被父進程停止。
3.根據權利要求1或2所述的方法,其特征在于,所述啟動計時器并在設定個線程的設定個管道中創建多個子任務還包括:
計時器基于觸發時間來超時進行響應;
串型、高并發模型開始工作前,上游并行器基于高并發數量進行分配子任務壓測結果使用的內存空間以及子任務工作狀態使用內存空間,并將子任務序號、內存空間地址作為數據結構有序寫入不同的單向鏈表后,開始初始化子任務并傳遞壓測結果鏈表、工作狀態鏈表給子任務,隨即異步啟動子任務;
子任務啟動后,領取壓測結果鏈表、工作狀態鏈表進行更新狀態更新、數據更新;
異步執行子任務后,立即喚醒計時器,并將壓測結果鏈表傳遞給計時器;計時器加鎖阻塞主邏輯讓子任務處于工作狀態,然后計時器以自旋的方式輪訓監聽當前任務運行時間,若當前任務運行時長大于計時器的閾值時,計時器釋放鎖資源,進入下一個任務流程。
4.根據權利要求3所述的方法,其特征在于,包括:
單向鏈表的結構體如下:
子任務已經將壓測指標計算完畢后,遍歷壓測結果鏈表將子任務的壓測結果進行匯總統計。
5.根據權利要求4所述的方法,其特征在于,還包括:
在計時器到期前,所述多個線程中創建多個子任務執行完畢,進行壓力測試數據分析;
所述壓力測試數據包括:
數據庫成功的請求量:所有子任務QPS的和;
數據庫失敗的請求量:所有子任務錯誤計數ErrCount的和;
數據庫總請求量:數據庫成功的請求量+數據庫失敗的請求量;
數據庫總消耗時間:所有子任務消耗時間的總和;
平均數據庫響應時間:數據庫總消耗時間/數據庫成功的請求量;
最大數據庫響應時間:取所有任務中單次執行最慢的消耗時間;
最小數據庫響應時間:取所有任務中單次執行最快的消耗時間。
6.根據權利要求1所述的方法,其特征在于,
接收壓力測試參數并判斷所述壓力測試參數是否滿足設定條件之前,還包括:用戶能設定不同壓力測試參數以模擬不同的業務場景,其中,其中,所述壓力測試參數包括:并發數量、數據庫超時時間、執行總時間、設定數據庫壓測類型;
和\或
接收壓力測試參數并判斷所述壓力測試參數是否滿足設定條件,包括:
根據所述用戶設定的不同的壓力測試判斷當前數據庫是否能滿足壓力設定條件;
若當前壓力測試工具的狀態滿足所述壓力測試參數所需要設定條件,則啟動壓力測試的主線程;若當前壓力測試工具的狀態不滿足壓力測試參數所需要設定條件,則反饋給用戶壓力測試失敗。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于周志燕,未經周志燕許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010725194.7/1.html,轉載請聲明來源鉆瓜專利網。





