本地調試dubbo服務的幾種方法

2020-10-26 layne

一、通過修改版本號來區分本地版本

把本地的某些服務版本修改調,和測試環境的做區分,測試環境就不會訪問到你本地啟動的服務了。

提供者配置version:

<dubbo:provider timeout="10000" threadpool="fixed" threads="100"              accepts="1000" version="0.0.6"/>

改版本號來區分


消費端配置version: 和提供者配置相同的version

<dubbo:consumer version="0.0.6" />

改版本號來區分


二、使用telnet

1、dubbo從2.0.8版本開始增加了協議註冊開關(register="false") 例如:<dubbo:registry address="xxxxxx" register="false"/> 可以關掉,不註冊到配置中心,啟動本地服務,使用telnet

2、使用telnet登錄dubbo,進行調用


3、查看提供者都提供了什麼服務,ls命令,ls com.cxxx.xxxx**

dubbo>lscom.test.DemoServicedubbo>ls com.test.DemoServicequeryDemoPageListinsertDemolist

4、調用方法 調用響應方法,可以在本地調試

dubbo> invoke com.test.DemoService.queryDemoPageList({"id":"100"}, 1, 2){"totalCount":1,"data":[{date":"2017-03-23 14:10:32","name":"張三","keyword":"222"}]}

三、直接訪問本地URL

1、服務方 添加register="false"

<dubbo:registry address="xxxxxx" register="false"/>

2、消費方 通過設置關聯服務的URL地址,可以實現直連本地dubbo服務 例如:

<dubbo:reference id="xxxxService" interface="xxxxx.xxxxService" protocol="dubbo" url="dubbo://127.0.0.1:28050"/>

四、多註冊中心的連接

1.寫兩個註冊中心地址,分別定義不同的id


2.在引入指定服務接口時需要加入registry屬性指定註冊中心定義的id


這樣就實現 了多註冊中心的連接,因為我本地電腦無法啟動所有微服務,除了自己寫的微服務之外的服務全部調用測試接口的服務,只有自己需要測試的服務連接本地的服務,用於調試就行了

注意

如果使用了公司的vpn,發現通過修改版本號的方式還是不行的,有多個IP,服務使用不了。 在dubbo.xml可以配置主機地址,這個不建議修改,只是調試用

<dubbo:protocol host="205.182.23.201">

還有些開源工具也可以用來調試本地環境,https://github.com/VIPJoey/doe

相關焦點

  • 大廠面試系列(五):Dubbo和Spring Cloud
    dubbo的spi思想dubbo進行的服務治理、服務降級、失敗以及重試。服務端怎麼知道客戶端要調用的算法的?闡述下dubbo的架構dubbo支持的註冊中心有哪些,分別的優缺點dubbo執行流程?dubbo和springclond的架構區別和優劣?說一下dubbo的實現過程?註冊中心掛了可以繼續通信嗎?
  • Dubbo源碼解析之服務端Provider
    讓我們直接將調用本地方法一樣調用遠程方法。關鍵詞一:通信協議dubbo默認不是基於HTTP,而是基於dubbo自定義的協議。>二、提供服務流程這裡我們只先分析dubbo的源碼,後面再說dubbo整合spring的原理。
  • 源碼講解Dubbo服務暴露過程
    本地服務暴露遠程服務暴露本章我們主要講解遠程服務暴露。Constants.SCOPE_NONE.toString().equalsIgnoreCase(scope)) { // 本地服務暴露 // export to local if the config is not remote (export to remote only when config is remote) if (!
  • 阿里面試:dubbo的服務引用流程
    餓漢式是通過實現 Spring 的InitializingBean接口中的 afterPropertiesSet方法,容器通過調用 ReferenceBean的 afterPropertiesSet方法時引入服務。懶漢式是只有當這個服務被注入到其他類中時啟動引入流程,也就是說用到了才會開始服務引入。
  • Dubbo系列筆記之服務引用過程,不服不行
    一、引言服務引用有 直連 和 註冊中心 兩種方式,一般來說直連方式不推薦用於生產,僅提供測試或預發布的調試使用。所以本篇重點分析通過註冊中心引用服務的過程。四、引用服務接著上面我們繼續看 34;Using injvm service &34;No such any registry to reference &34; on the consumer &34; use dubbo version
  • 史上最全 40 道 Dubbo 面試題及答案,看完碾壓面試官
    6、Dubbo內置了哪幾種服務容器?配置 | 配置說明 ---|--- dubbo:service | 服務配置 dubbo:reference | 引用配置 dubbo:protocol | 協議配置 dubbo:application | 應用配置 dubbo:module | 模塊配置 dubbo:registry | 註冊中心配置 dubbo:monitor
  • 我終於知道什麼是Dubbo了
    先去B站看了視頻,然後網上找來資料,終於把dubbo是什麼以及怎麼用了解清楚了。今天就把新學的dubbo的那些事和大家一起探討一下。Dubbo是什麼Dubbo是一個分布式、高性能、透明化的RPC服務框架,提供服務自動註冊、自動發現等高效服務治理方案,可以和Spring框架無縫集成。
  • Dubbo測試環境服務調用隔離這麼玩對麼
    他的訴求是這樣子的:訴求一第一個訴求是本地開發的時候想自己調用自己的服務,比如自己在改 A 服務,然後出問題了,本地再啟動一個 B 服務,A 服務調用 B 服務直接排查問題。目前的問題是用的同一個註冊中心,所以會調用到其他的服務實例。
  • dubbo實戰之四:管理控制臺dubbo-admin
    實戰》系列的第四篇,內容是部署和啟動dubbo管理控制臺服務,該服務在開發、測試、生產等環節都非常重要,接下來一起通過實戰學習和了解它,官方GitHub地址:https://github.com/apache/dubbo-admin整篇文章由以下內容構成:準備工作(註冊中心、服務提供者、服務消費者);準備工作
  • RPC 服務框架 Dubbo 將正式得到官方維護與支持
    近日,Dubbo 項目官網更新了一則公告:dubbo項目將正式得到官方維護與支持,我們期待這款優秀的開源項目在未來持續保持活力,引領開源服務框架  --Alibaba
  • Dubbo-go 源碼筆記(一)Server 端開啟服務過程
    在這裡你可以定義配置文件的獲取方式,比如配置中心,本地文件讀取。在這裡你可以定義配置文件的獲取方式,比如配置中心,本地文件讀取。,將服務註冊在 zookeeper 註冊器上,從而為調用者提供調用方法。名("UserProvider)、暴露的協議名("dubbo")、註冊的協議名("demoZk")、暴露的服務所處的 interface、負載均衡策略、集群失敗策略及調用的方法等等。
  • dubbo學習之源碼創建屬於自己的dubbo-demo
    定義實體Userpublic class User implements Serializable { private String userId; private String userName; private String userLevel; private String userAddress; //省略get/set方法
  • 看看Dubbo是如何實現的
    ,我們往往需要服務集群化。如果集群服務中出現了某個服務故障則就需要集群實現容錯機制。容錯的實現是在Dubbo的容錯層中,具體還是要先看AbstractClusterInvoker這個抽象類,它定義了最基本的整個集群容錯層的流程模版。
  • Dubbo 工作原理
    第二層: config 層,配置層,主要是 dubbo 的各種配置。第三層: proxy 層,服務代理層,透明生成客戶端的 stub 和服務單的 skeleton第四層: registry 層,服務註冊層,負責服務的註冊於發現。第五層:cluster 層,集群層,封裝多個服務提供者的路由以及負載均衡。
  • 當Dubbo遇上Arthas,會碰撞出什麼樣的火花呢?
    github:https://github.com/apache/incubator-dubbo文檔:http://dubbo.incubator.apache.org/zh-cn/Arthas是Alibaba開源的應用診斷利器,
  • 簡簡單單,通過源碼解讀Dubbo服務訂閱,保證你學的明明白白
    介紹dubbo的服務訂閱可以通過2種方式: 1)通過xml文件的標籤<dubbo:reference />這2種服務訂閱在使用上基本沒區別,因為標籤<dubbo:reference />上的屬性欄位都可以在註解@DubboReference上對應的找到。一般使用XML的配置文件方式來訂閱服務。但是這2種的源碼實現上有一定的區別和公用。
  • 阿里資深架構師帶你解密dubbo和zookeeper關係
    –目前對我來說就是,我A工程想調用B工程中的方法怎麼辦?我import不進來啊,這時候我就需要遠程調用的方法了,怎麼遠程調用呢?dobbu給我提供了一個好的開源框架,那我就用它來操作吧!我們通過dubbo 建立service這個服務,並且到zookeeper上面註冊,填寫對應的zookeeper服務所在 的IP及埠號。
  • Dubbo 3.0前瞻:重塑Spring Cloud服務治理
    簡單示例開發 Dubbo Spring Cloud 應用的方法與傳統 Dubbo 或 Spring Cloud 應用類似,按照以下步驟就能完整地實現Dubbo 服務提供方和消費方的應用,完整的示例代碼請訪問一下資源:Dubbo 服務提供方應用
  • 由Dubbo直連引出的new File()路徑問題
    Dubbo 直連的幾種方式在 Dubbo 官網的 直連提供者 這篇文章中向開發者介紹了繞過註冊中心,直接通過ip+埠指定服務提供者的直連方式。需要注意的是:官方建議直連方式僅 開發測試 時使用!直連調試在項目中有很多個 Dubbo 接口,而且在線上的某種環境中是沒有 zk 註冊中心的,出於切換 Dubbo 接口調用方式以及方便管理所有 Dubbo 接口的考慮,我選用的是第四種——通過映射文件實現直連。
  • Dubbo 3.0前瞻之重塑Spring Cloud服務治理
    對應的服務消費端,同樣地需要依賴該 artifact,並以接口調用的方式執行遠程方法。接下來進一步討論怎樣實現 Dubbo 服務提供方和消費方。 作為暴露的 Dubbo 服務接口,服務提供方 spring-cloud-dubbo-server-sample 需要將其實現:@org.apache.dubbo.config.annotation.Serviceclass