使用Jmeter針對(duì)ActiveMQ JMS POINT TO POINT壓力測(cè)試

準(zhǔn)備工作

針對(duì)JMS類型的Sampler,需要額外的jar包(這里用的是apache ActiveMQ,將下載的AMQ?apache-activemq-5.5.0根目錄下的activemq-all-5.5.0.jar拷貝到JMETER_HOME\lib目錄下)

啟動(dòng)ActiveMQ:打開dos窗口,進(jìn)入ActiveMQ解壓目錄下的bin\win32目錄,輸入命令:activemq.bat start

Tips:在啟動(dòng)ActiveMQ前,修改conf目錄下的activemq.xml中的配置

65535&wireFormat.maxFrameSize=104857600">

上面標(biāo)記的這個(gè)數(shù)字為最大連接數(shù),自己設(shè)置,如果太小的話會(huì)導(dǎo)致發(fā)送的請(qǐng)求都被拒絕

啟動(dòng)ServerAgent:進(jìn)入剛才解壓的目錄,以管理員身份運(yùn)行startAgent.bat

創(chuàng)建JMS測(cè)試計(jì)劃

啟動(dòng)Jmeter:進(jìn)入JMETER_HOME\bin目錄,以管理員身份運(yùn)行Jmeter.bat,此時(shí)會(huì)啟動(dòng)兩個(gè)窗口,一個(gè)是dos窗口(請(qǐng)勿關(guān)閉此窗口),另一個(gè)是Jmeter的GUI界面

添加一個(gè)線程組

添加Samper:選擇JMS POINT TO POINT

配置Sampler,這一塊才是重點(diǎn),因?yàn)橐玫絁NDI,之前網(wǎng)上看了些文章,都是直接修改ApacheJMeter_core.jar中的

jemeter.properties文件,這種方式比較麻煩,涉及重新打包,這里我就直接在Jmeter GUI中配置JNDI的屬性,具體見下圖:

QueueConnection Factory:連接名

JNDI name Request queue:JNDI請(qǐng)求發(fā)送隊(duì)列名

JNDI name Recieve queue:JNDI接收隊(duì)列

TimeOut:超時(shí)時(shí)長

Expiration:過期時(shí)間

Communication style:Request only(只發(fā)送請(qǐng)求,如果選擇Request

Response模式,需要設(shè)置CorrelationId,并且需要服務(wù)端調(diào)用getReplyTo()方法來監(jiān)聽請(qǐng)求,這個(gè)一直沒調(diào)通,回頭再研究看

看能不能通過自己寫代碼實(shí)現(xiàn))

Content:發(fā)送消息內(nèi)容,這里調(diào)用Jmeter的函數(shù)助手發(fā)送512個(gè)字符

Initial Context Factory:org.apache.activemq.jndi.ActiveMQInitialContextFactory(這個(gè)在之前從AMQ中拷貝到Jmeter\lib中的jar包里,Jmeter會(huì)自動(dòng)掃描到)

JNDI Properties,queue.Test.Request和queue.Test.Reply,這里定義前面用到的兩個(gè)變量

Provider URL:tcp://localhost:61616,這個(gè)是消息服務(wù)器的ip和端口,我這里用的本地的

下面就是添加監(jiān)聽器了,添加一個(gè)聚合報(bào)告,然后再添加一個(gè)jp@gc - PerfMon Metrics Collector監(jiān)聽器,其它的監(jiān)聽器及配置元件根據(jù)自己的實(shí)際需要來添加,這里貼一個(gè)PerfMon Metrics Collector配置

現(xiàn)在,一個(gè)JMS PTP的采樣器已經(jīng)配置完成,去設(shè)置一個(gè)線程開始跑起來吧,下面是一次運(yùn)行后的結(jié)果

聚合報(bào)告:

服務(wù)器資源占用情況:

小結(jié):針對(duì)此壓力測(cè)試,只是參照此運(yùn)行成功,對(duì)此中間件并不是很了解,希望后續(xù)有空能了解此中間件.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容