亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么使用jMeter對某個OData服務進行高并發性能測試

發布時間:2021-11-30 17:25:21 來源:億速云 閱讀:191 作者:小新 欄目:編程語言

這篇文章主要介紹了怎么使用jMeter對某個OData服務進行高并發性能測試,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

For project reason I have to measure the performance of OData service being accessed parallelly. And I plan to use the open source tool JMeter to generate a huge number of request in parallel and measure the average response time. Since I am a beginner for JMeter, I write down what I have learned into this blog. I will continue to explorer the advanced feature of JMeter in my daily work.

某團隊開發了一個OData服務,現在我接到任務,要測試這個服務在高并發訪問場景下的性能指標,比如5萬個請求同時到來后,每個請求的平均響應時間,因此我選擇了jMeter這個好用的工具來模擬高并發請求。

怎么使用jMeter對某個OData服務進行高并發性能測試

  1. Download JMeter from its official website:

http://jmeter.apache.org/

Go to the installation folder, add the following text in file \bin\user.properties:
httpclient4.retrycount=1
hc.parameters.file=hc.parameters

  1. Create a new test plan for example Customer_Query_OData_test, and right click on it and create a thread group from context menu.
    創建一個新的測試plan,基于其再創建一個線程組:


    怎么使用jMeter對某個OData服務進行高并發性能測試

Below configuration means I would like to generate three request in parallel via three threads, each thread is executed only once. And there is no delay during the spawn of each threads ( Ramp-Up Period = 0 )

下列設置意思是我想創建三個并發請求,每個請求通過一個線程實現,每個線程僅僅執行一次。每個線程派生后的延時是0秒,意思是主線程同時創建三個線程。

怎么使用jMeter對某個OData服務進行高并發性能測試

創建一個新的HTTP請求,維護下列設置:

Create a new Http Request and maintain the following settings:
(1) Protocol: https
(2) Server name:
(3) Http request method: GET
(4) Http path: /sap/c4c/odata/v1/c4codata/AccountCollection/ - 這就是OData服務的相對路徑了
(5) Use KeepAlive: do NOT select this checkbox - 記得這個勾別打上

In Parameter tab, maintain query option $search with value ‘Wang’

這個意思就是每個并發請求同時發起OData查詢,參數為我的名字Wang

怎么使用jMeter對某個OData服務進行高并發性能測試

Switch to Advanced tab, choose “HttpClient4” from drop down list for Implementation, and maintain proxy server name and port number.

如果有代理的話,在下圖位置維護代理服務器信息。

怎么使用jMeter對某個OData服務進行高并發性能測試

  1. Create a new HTTP Header Manager and specify the basic authentication header field and value.

在HTTP Header Manager里維護訪問這個Odata服務的credential。因為我們開發的OData服務支持Basic Authentication這種認真方式,所以我在此處的HTTP header字段里維護Authentication信息。

怎么使用jMeter對某個OData服務進行高并發性能測試

  1. Create a listener for the test plan. In my test I simply choose the most simple one: View Results in Table.

創建listener,主要用途當然是顯示測試結果了。我使用的是jMeter自帶的Listener,Table類型的,以表格形式顯示高并發請求和響應的各項指標。

怎么使用jMeter對某個OData服務進行高并發性能測試

Once done, start the test:

一切就緒,點擊這個綠色的三角形開始測試:

怎么使用jMeter對某個OData服務進行高并發性能測試

After the test is finished, double click on View Result Listener and the response time for each request and the average response time is displayed there:

測試完畢后,雙擊我們之前創建的Table Result Listener,我這三個并發請求的性能指標就顯示出來了。可以看到三個請求中,最快的請求用了5.1秒,最慢的6.9秒

怎么使用jMeter對某個OData服務進行高并發性能測試

當然,jMeter也支持命令行方式使用:
Or you can use command line to achieve the same:
-n: use non-GUI mode
-t: specify which test plan you want to run
-l: specify the path of output result file

怎么使用jMeter對某個OData服務進行高并發性能測試

為了檢驗jMeter采集的數據是否正確可靠,我還花時間寫了一個Java程序,用JDK自帶的線程池產生并發請求,測試的結果和jMeter是一致的。
And I have written a simple Java application to generate parallel request via multiple thread and the result measured in Java program is consistent with the one got from JMeter.
The source code could be found from my github:

我的Java程序放在我的github上:
https://github.com/i042416/JavaTwoPlusTwoEquals5/tree/master/src/odata

怎么使用jMeter對某個OData服務進行高并發性能測試

How to generate random query for each thread in JMeter

到目前為止,我的三個并發請求進行搜索的參數都是硬編碼的Wang,這個和實際場景不太符合。有沒有辦法生成一些隨機的搜索字符串,這樣更貼近真實使用場景呢?

Suppose we would like each thread in JMeter to generate different customer query via OData with the format JerryTestCustomer_<1~100>, we can simply create a new user parameter:

當然有辦法:右鍵菜單,Add->Pre Processors(預處理器)->User Parameters:

怎么使用jMeter對某個OData服務進行高并發性能測試

參數名Parameter name,取為uuid
參數值Parameter value: use JMeter predefined function __Random to generate random number.
使用jMeter自帶的隨機數生成函數__Random。

因此最后參數uuid的值為${__Random(1,100)},意思是生成1到100內的隨機正整數

怎么使用jMeter對某個OData服務進行高并發性能測試

and in http request, just specify reference to this variable via ${uuid}:

在http請求里,用固定的前綴JerryTestCustomer_加上隨機參數,以此來構造隨機搜索字符串:

怎么使用jMeter對某個OData服務進行高并發性能測試

So that in the end each thread will issue different query to OData service end point.

通過Table Result listener,能觀察到這次確實每個請求發起的搜索都使用了不同的字符串了。

怎么使用jMeter對某個OData服務進行高并發性能測試

怎么使用jMeter對某個OData服務進行高并發性能測試

怎么使用jMeter對某個OData服務進行高并發性能測試

感謝你能夠認真閱讀完這篇文章,希望小編分享的“怎么使用jMeter對某個OData服務進行高并發性能測試”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

峨边| 固始县| 南京市| 哈尔滨市| 阳信县| 三台县| 宾川县| 景德镇市| 清水县| 西充县| 枣强县| 汝城县| 乌恰县| 林口县| 甘洛县| 江达县| 伊通| 宕昌县| 云林县| 宁国市| 宽城| 武威市| 和平县| 海南省| 岑巩县| 富民县| 甘孜县| 临泉县| 托克逊县| 香格里拉县| 建瓯市| 茂名市| 和平区| 白朗县| 连平县| 盘锦市| 紫云| 巴彦县| 大新县| 定襄县| 恩平市|