国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!

這篇具有很好參考價值的文章主要介紹了壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

引言

windows環(huán)境部署

1.安裝環(huán)境變量

2.配置環(huán)境變量

3.修改Jmeter配置文件

4.啟動jmeter

5.啟動分布式服務

Linux環(huán)境部署

1.安裝JDK+Jmeter

2.環(huán)境優(yōu)化

4.編寫Jmeter腳本

5.啟動Jmeter

6.停止Jmeter

7.打包查看測試報告


引言

您想要提高您的應用程序的性能嗎?想要確保它在高負載下仍然能夠正常工作嗎?那么,您一定需要一個可靠的性能測試工具來幫助您完成這個任務。

JMeter是一個廣泛使用的性能測試工具,但是如果您的測試需求變得更加復雜和龐大,那么單機運行可能無法滿足您的需求。那么有沒有一種方法可以提高測試效率呢?

當然有!搭建JMeter分布式壓測環(huán)境是一個明智的選擇。通過增加多臺計算機節(jié)點,您可以將測試負載分散到不同的計算機上,從而有效地提高測試效率,并且節(jié)省大量時間和精力。

在本篇文章中,我們將為您詳細介紹如何搭建JMeter分布式壓測環(huán)境,并分享一些實用的技巧和經(jīng)驗,助您輕松應對壓力山大的測試任務。讓我們開始吧!

windows環(huán)境部署

1.安裝環(huán)境變量

下載JDK,可以在oracle官網(wǎng)下載

2.配置環(huán)境變量

將下載下來的JDk進行安裝,添加JAVA_HOME 填寫JDK存放路徑(根據(jù)自己路徑進行填寫),如C:\Program Files\Java\jdk1.8.0_202

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

添加JMETER_HOME 填寫Jmeter存放路徑(根據(jù)自己路徑進行填寫),如D:\辦公\3.軟件\jmeter5.1+java1.8\apache-jmeter-5.1.1

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

添加CLASSPATH,將下面內(nèi)容加在最后

;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%JMETER_HOME\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;%JMETER_HOME%\lib\logkit-2.0.jar

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

添加Path,將下面內(nèi)容加在最后

%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin
%JMETER_HOME%\bin

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

3.修改Jmeter配置文件

進入Jmeter配置文件中D:/**/apache-jmeter-5.3/bin/jmeter.properties

server.rmi.ssl.disable=true ?????# 將false改成true,去掉前面#號

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

添加發(fā)壓機(這一步是添加使用Jmeter分布式需要啟動的發(fā)壓機,IP+端口):

remote_hosts=xxx.168.xxxx.2:1099,xxxx.168.xxx.3:1099,xxxx.168.xx.4:1099

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

4.啟動jmeter

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

Jmeter工具使用請看下面文章:Jmeter壓測工具入門篇

5.啟動分布式服務

在slave機(發(fā)壓機)上啟動客戶端jmeter-server.bat

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

如下圖看到slave已經(jīng)啟動。

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

slave機啟動后,在master選擇 運行,遠程啟動/遠程啟動所有,就可以分布式的多臺slave機一起壓測了。

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

Linux環(huán)境部署

1.安裝JDK+Jmeter

安裝jmeter之前需要先安裝jdk,下載jdk(可以使用下面地址進行下載,也可以去官網(wǎng)下載,官網(wǎng)需要登錄oracle)

鏈接: https://pan.baidu.com/s/1Gu5pwMxyxGxN3X94E5NKYg?pwd=ai6j

(內(nèi)網(wǎng)部署只需要手動把JDK和Jmter包上傳到內(nèi)網(wǎng)解壓,其余步驟不變)

解壓jdk,這里安裝到/usr/local/java/目錄(安裝路徑根據(jù)個人喜好,但要和環(huán)境變量中的地址匹配)

tar -zxvf jdk-8u181-linux-x64.tar.gz

配置環(huán)境變量,修改配置文件vi /etc/profile,文本最后加上以下內(nèi)容

JAVA_HOME=/usr/local/java/jdk1.8.0_181
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH

使環(huán)境變量生效

source /etc/profile

驗證jdk配置成功

java -version

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

使用命令直接安裝Jmeter

wget https://mirrors.bfsu.edu.cn/apache//jmeter/binaries/apache-jmeter-5.4.3.tgz

如果是內(nèi)網(wǎng)環(huán)境,需要手動上傳Jmeter安裝包,下載最新版Jmeter

解壓jmeter,這里安裝到/usr/local目錄(安裝路徑根據(jù)個人喜好,但要和環(huán)境變量中的地址匹配)

tar -zxf apache-jmeter-5.4.3.tgz

建立腳本目錄:/root/jmeter/scripts,#腳本上傳的地址

建立報告目錄:/root/jmeter/report,#報告生成存放目錄

配置jmeter環(huán)境變量,vi /etc/profile,文本最后加上以下內(nèi)容

export JMETER_HOME=/usr/local/apache-jmeter-5.4.3
export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH
export PATH=$JMETER_HOME/bin:$PATH

使環(huán)境變量生效

source /etc/profile

驗證jmeter配置成功

jmeter --version

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

2.環(huán)境優(yōu)化

1.配置jmeter的使用內(nèi)存,根據(jù)實際服務器和測試需求量來修改,最大為服務器內(nèi)存的一半

vi /usr/local/apache-jmeter-5.4.3/bin/jmeter

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

2.優(yōu)化linux內(nèi)存參數(shù),修改limits.conf文件:

vi /etc/security/limits.conf

最后添加(不同操作系統(tǒng)可能不一樣,下面為centos):

*               soft    nofile            102400
*               hard    nofile            102400
*               soft    nproc             65535
*               hard    nproc             65535

重新打開SSH終端,執(zhí)行如下命令查看是否生效

ulimit -n

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

3.修改Linux內(nèi)核參數(shù),修改/etc/sysctl.conf文件:

vi  /etc/sysctl.conf

并添加以下內(nèi)容:

net.ipv4.tcp_syncookies = 0
fs.file-max = 12553500
fs.nr_open = 12453500
kernel.shmall= 1048576
kernel.shmmax = 1887436
kernel.msgmax = 65536
kernel.sysrq = 0
kernel.pid_max= 65536
net.core.netdev_max_backlog = 2000000
net.core.rmem_default = 699040
net.core.rmem_max = 50331648
net.core.wmem_default = 131072
net.core.wmem_max = 33554432
net.core.somaxconn = 65535
net.ipv4.ip_nonlocal_bind = 1
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_mem = 1048576 1572864 2097152
net.ipv4.tcp_rmem = 4096 4194304 8388608
net.ipv4.tcp_wmem = 4096 4194304 8388608
net.ipv4.tcp_slow_start_after_idle = 0
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_window_scaling = 1
vm.swappiness = 0
#TCP connection recovery
net.ipv4.tcp_max_tw_buckets = 6000000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 30
net.ipv4.route.max_size = 5242880
net.ipv4.ip_forward = 1
#0表示不開啟檢查時間錯,建議設置0
net.ipv4.tcp_timestamps = 0
#開啟對于TCP時間戳的支持,若該項設置為0,則下面一項設置不起作用
#TCP connection manager
net.ipv4.tcp_max_syn_backlog = 655360
net.ipv4.tcp_syn_retries = 6
net.ipv4.tcp_retries1 = 3
net.ipv4.tcp_retries2 = 6
#TCP keepalive
net.ipv4.ip_local_port_range = 1025 65534
net.ipv4.tcp_keepalive_time = 30
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_keepalive_probes = 3

輸入下面的命令,讓內(nèi)核參數(shù)生效:

sysctl -p

3.修改Jmeter配置文件

進入Jmeter配置文件中D:/**/apache-jmeter-5.3/bin/jmeter.properties

server.rmi.ssl.disable=true ?????# 將false改成true,去掉前面#號

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

添加負載機(這一步是添加使用Jmeter分布式需要啟動的負載機,IP+端口):

remote_hosts=xxx.168.xxxx.2:1099,xxxx.168.xxx.3:1099,xxxx.168.xx.4:1099

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

4.編寫Jmeter腳本

通過Windows把要壓測的Jmeter腳本調(diào)試完成,保存為****.jmx文件,上傳到Linux服務。

5.啟動Jmeter

1)先分別啟動slave(所有壓測機)上的服務,命令如下(多網(wǎng)卡需要指定ip)

nohup jmeter-server -Djava.rmi.server.hostname=172.168.xxx.2 &  #壓測機IP

2)啟動master,執(zhí)行以下命令啟動jmeter

jmeter -r -n -t ***.jmx -l test.jtl
參數(shù)說明:
-n 非 GUI 模式 -> 在非 GUI 模式下運行 JMeter
-t 測試文件 -> 要運行的 JMeter 測試腳本文件
-l 日志文件 -> 記錄結(jié)果的文件
-r 代表全部agent啟動并參與測試

3)如果要啟動指定發(fā)壓機,執(zhí)行以下命令

jmeter -n -t ***.jmx -l test.jtl -R xxxx.168.xx,xxxx.168.xx,xxxx.168.xx
參數(shù)說明:
-n 非 GUI 模式 -> 在非 GUI 模式下運行 JMeter
-t 測試文件 -> 要運行的 JMeter 測試腳本文件
-l 日志文件 -> 記錄結(jié)果的文件
-R 指定的agent啟動并參與測試

6.停止Jmeter

進入到JMeter 的 bin 目錄下,輸入 ./shutdown.sh 命令停止腳本

注:如果在分布式壓測過程中,想要終止壓測,千萬不要在Linux上按 ctrl + c 強制終止程序,這樣會知道主程序掛了之后,從機未接受到執(zhí)行,會一直持續(xù)運行。當你再次從主機上運行腳本,從機仍然會在上一個腳本的程序中運行,這時需要去殺掉進程。

7.打包查看測試報告

將linux下的report打包成zip,然后導出到windows下查看index.html測試報告

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!?

?文章來源地址http://www.zghlxwxcb.cn/news/detail-464735.html

寫在最后

這篇貼子到這里就結(jié)束了,最后,希望看這篇帖子的朋友能夠有所收獲。

都到這了記得三連支持一下吧。

-------------------------------------------------

完整版文檔下載方式:

這些資料,對于從事【軟件測試】的朋友來說應該是最全面最完整的備戰(zhàn)倉庫,這個倉庫也陪伴我走過了最艱難的路程,希望也能幫助到你!以上均可以分享。

壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!??

在評論區(qū)和我互動交流或者私?我【軟件測試學習】領取即可,拿走不謝。

?

到了這里,關(guān)于壓力山大?搭建JMeter分布式壓測環(huán)境輕松應對!的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關(guān)文章

  • 基于Docker的JMeter分布式壓測

    基于Docker的JMeter分布式壓測

    目錄 前言: Docker Docker在JMeter分布式測試中的作用 Dockerfile用于JMeter基礎: Dockerfile for JMeter Server / Slave: 總結(jié) 前言: ? ? ? ? 基于Docker的JMeter分布式壓測是一種將JMeter測試分布在多個容器中進行的方法,可以提高測試的性能和效率。使用Docker容器化JMeter,可以輕松地在多個主

    2024年02月11日
    瀏覽(20)
  • 利用 docker 實現(xiàn)JMeter分布式壓測

    利用 docker 實現(xiàn)JMeter分布式壓測

    在工作中經(jīng)常需要對一些關(guān)鍵接口做高QPS的壓測,JMeter是由Java 語言開發(fā),沒創(chuàng)建一個線程(虛擬用戶),JVM默認會為每個線程分配1M的堆棧內(nèi)存空間。受限于單臺試壓機的配置很難實現(xiàn)太高的并發(fā)。所以,通過JMeter實現(xiàn)分布式,可以整合多臺主機的硬件資源,實現(xiàn)同時對被測

    2024年02月05日
    瀏覽(31)
  • 基于docker實現(xiàn)JMeter分布式壓測

    基于docker實現(xiàn)JMeter分布式壓測

    在工作中經(jīng)常需要對一些關(guān)鍵接口做高QPS的壓測,JMeter是由Java 語言開發(fā),沒創(chuàng)建一個線程(虛擬用戶),JVM默認會為每個線程分配1M的堆棧內(nèi)存空間。受限于單臺試壓機的配置很難實現(xiàn)太高的并發(fā)。所以,通過JMeter實現(xiàn)分布式,可以整合多臺主機的硬件資源,實現(xiàn)同時對被測

    2024年02月07日
    瀏覽(23)
  • Jmeter分布式壓力測試

    Jmeter分布式壓力測試

    目錄 1、場景 2、原理 3、注意事項 4、slave配置 5、master配置 6、腳本執(zhí)行 在做性能測試時,單臺機器進行壓測可能達不到預期結(jié)果。主要原因是單臺機器壓到一定程度會出現(xiàn)瓶頸。也有可能單機網(wǎng)卡跟不上造成結(jié)果偏差較大。 例如4C8G的window server機器,使用UI方式,最高壓測

    2024年02月08日
    瀏覽(15)
  • Jmeter分布式壓力測試詳解

    Jmeter分布式壓力測試詳解

    在做性能測試時,單臺機器進行壓測可能達不到預期結(jié)果。主要原因是單臺機器壓到一定程度會出現(xiàn)瓶頸。也有可能單機網(wǎng)卡跟不上造成結(jié)果偏差較大。 例如4C8G的window server機器,使用UI方式,最高壓測在1800并發(fā)(RT 20ms以內(nèi))左右。如果對于XML文件進行解析,更容易吃CPU,并發(fā)

    2024年02月05日
    瀏覽(18)
  • 分布式壓測之locust和Jmeter的使用

    分布式壓測之locust和Jmeter的使用

    受限于單臺機器的配置問題,我們在單臺機器上達不到一個很高的壓測并發(fā)數(shù),那這個時候就需要 引入分布式壓測 分布式壓測原理: 一般通過局域網(wǎng)把不同測試計算機鏈接到一起,達到測試共享、分散操作、集中管理的目的。 選擇一臺作為調(diào)度機(MASTER),其他機器作為執(zhí)

    2024年02月19日
    瀏覽(23)
  • 【性能測試】分布式壓測之locust和Jmeter的使用

    【性能測試】分布式壓測之locust和Jmeter的使用

    受限于單臺機器的配置問題,我們在單臺機器上達不到一個很高的壓測并發(fā)數(shù),那這個時候就需要 引入分布式壓測 分布式壓測原理: 一般通過局域網(wǎng)把不同測試計算機鏈接到一起,達到測試共享、分散操作、集中管理的目的。 選擇一臺作為調(diào)度機(MASTER),其他機器作為執(zhí)

    2024年02月19日
    瀏覽(45)
  • 如何進行JMeter分布式壓測?一個案例教你詳細解讀!

    如何進行JMeter分布式壓測?一個案例教你詳細解讀!

    目錄 引言 一、什么是壓力測試? 二、什么是分布式測試? 三、為什么要使用分布式壓力測試? 四、主流壓力測試工具對比 五、Jmeter分布式壓測原理 六、Jmeter分布式壓測前的準備工作 七、阿里云服務器上進行分布式壓測 八、系統(tǒng)架構(gòu)學習 當前快速發(fā)展的互聯(lián)網(wǎng)應用領域,

    2024年02月08日
    瀏覽(29)
  • docker+jmeter實現(xiàn)簡單的分布式壓力測試

    docker+jmeter實現(xiàn)簡單的分布式壓力測試

    階梯壓力測試的場景是為了驗證在系統(tǒng)運行期間,用戶不斷的登錄系統(tǒng)并使用一段時間,通過階梯的場景,模擬實際應用期間系統(tǒng)的穩(wěn)定性、承載性。 二、常用的階梯壓力測試線程組 stepping Thread Group 步長插件 Concurrency Thread Group 步長并發(fā)插件 兩者區(qū)別 stg不提供設置啟動延遲

    2024年04月16日
    瀏覽(23)
  • JMeter分布式集群---部署多臺機器進行性能壓力測試

    JMeter分布式集群---部署多臺機器進行性能壓力測試

    有些時候,我們在進行壓力測試的時候,隨著模擬用戶的增加,電腦的性能(CPU,內(nèi)存)占用是非常大的,為了我們得到更加理想的測試結(jié)果,我們可以利用jmeter的分布式來緩解機器的負載壓力,分布到多臺機器同時運行。 1.Jmeter分布式執(zhí)行原理: 1、Jmeter分布式測試時,選擇

    2024年02月11日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包