智力和智慧是兩碼事,很多人有智力,但不一定有智慧。
---《法治的細(xì)節(jié)》羅翔
一、前言
隨著分布式普及,日常工作中多少會接觸到dubbo,對于dubbo接口的調(diào)用或者壓測等等。
調(diào)用最簡單的方式便是telnet,或者泛化調(diào)用的方式。
進(jìn)入telnet命令行,invoke 對應(yīng)方法以及傳入對應(yīng)的參數(shù)即可。
當(dāng)然jm也有對應(yīng)開源插件。
二、原料和配件
地址:https://github.com/thubbo/jmeter-plugins-for-apache-dubbo/releases
下載完成,放入${jmeter_home}/lib/ext目錄下,重啟jm即可
[圖片上傳失敗...(image-1e09a-1678761177120)]
[圖片上傳失敗...(image-8022-1678761177120)]
三、參數(shù)詳解
① Registry Center(注冊設(shè)置) 區(qū)域填寫內(nèi)容:
直連的方式,Protocol選none。其他的選擇對應(yīng)的注冊中心即可,可以看到有zk,nacos等等
②Consumer&Service Settings(消費者和服務(wù)者設(shè)置):
Timeout:設(shè)置請求接口超時時間,默認(rèn)1000ms, 就用默認(rèn)的就行,如果實際接口響應(yīng)比較慢,也可以改大點,比如改成5000
Version:版本,一般無需填寫。Dubbo不同版本之間差異較大,不同版本之間不能互相調(diào)用。注意:默認(rèn)這里填的是1.0,現(xiàn)在dubbo的版本都是2.xx了,因此直接刪掉版本號,就讓這里為空,不然用默認(rèn)的1.0會調(diào)不通。最開始我沒有管這個值,結(jié)果發(fā)現(xiàn)調(diào)不通,刪了version的值就成功調(diào)通了。
后面其他的幾項值都不管,保持默認(rèn)就行。
③Get Provider List按鈕:
根據(jù)Address填寫的地址,獲取服務(wù)提供者的服務(wù)列表。直連的方式下,點這個按鈕沒用,會提示讓你把Protocol選為zookeepr or nacos or redis, 但是直連的時候Protocol要選none, 所以直連的時候就手動在下面去填interface和method,不用 Get Provider List按鈕來獲取。
④Interface 填 dubbo的接口:如com.xxx.xxx.xxxService
⑤Args:接口入?yún)?,輸入對?yīng)的參數(shù)類型和參數(shù)值
paramType:參數(shù)支持任何類型,可以直接使用java.lang下的包裝類,如:int、float、shot、double、long、byte、boolean、char、String等。類型也可以是自定義對象POJO,需使用類的完全名稱。
paramValue:填寫需要的參數(shù)值,例如:int為1,boolean為true等,自定義類與List或者M(jìn)ap等使用Json格式數(shù)據(jù)。
按照具體入?yún)魅爰纯伞?/p>