由於工作中使用dubbo介面極多,在產品之間聯調時往往會出現呼叫超時或資料錯亂問題,此時想單獨測試呼叫該提供者介面時往往需要啟動整個專案,當專案較大時往往比較耗時且比較麻煩,後來發現可以直接通過api配置的方式模擬乙個消費者,直接呼叫該介面,簡單粗暴,作為單元測試異常好用,下面直接貼該單元測試:
public class dubboprovidertest
@test
public void test()
}/**
* 獲取註冊中心資訊
* @param address 註冊中心位址
* @param version 服務提供者版本號
* @param group 服務所在的組
* @return
*/private static registryconfig getregistryconfig(string address, string version, string group)
return registryconfig;
}/**
* 獲取服務提供者的**物件
* @param address
* @param version
* @param group
* @param tclass 服務提供者介面
* @param * @return
*/private static referenceconfiggetreferenceconfig(string address, string version, string group, classtclass)
}
若想同樣通過api配置的方式啟動服務提供者,可參考該dubbo中文手冊: 服務提供者 order
本節課我們來實現服務提供者 orde,order 為系統提供訂單相關服務,包括新增訂單 查詢訂單 刪除訂單 處理訂單,具體實現如下所示。1.在父工程下建立乙個 module,命名為 order,pom.xml 新增相關依賴,order 需要訪問資料庫,所以整合 mybatis 相關依賴,配置檔案從 ...
建立服務提供者
當 client 向 server 註冊時,它會提供一些元資料,例如主機和埠,url,主頁等。eureka server 從每個 client 例項接收心跳訊息。如果心跳超時,則通常將該例項從註冊 server 中刪除。通過註解 enableeurekaclient表明自己是乙個 eureka cl...
從Zookeeper獲取dubbo提供者ip
建立zkclient物件,從children獲取即可 pkg引數是包名 實際情況中會獲取提供者會有多個,可能配置了禁用的提供者,所以需要獲取全列表。有dubboadmin的還是優先建議看dubboadmin 如下 public restresponse getprovideriplist restp...