Dubbo剖析-服务直连

一、前言

为了方便开发及测试,一般需要绕过注册中心,只测试指定ip的服务提供者,这时候服务消费方和服务提供方就是点对点直联方式。这时候服务消费方会忽略注册中心的提供者列表。另外直连方式以服务接口为单位,假如A 接口配置点对点,不影响 B 接口从注册中心获取列表。

二、直连方法

  • 通过-D参数指定
    在服务消费进程启动时候 JVM 启动参数中加入-D参数映射服务地址 ,如:
    -Dcom.test.UserServiceBo=dubbo://30.8.59.182:20880;则标示当调用com.test.UserServiceBo接口时候访问30.8.59.182:20880提供的服务,忽略zk发现列表。
  • 通过 XML 配置
    如果是XML方式点对点,可在 <dubbo:reference> 中配置 url 指向提供者,将绕过注册中
    心,多个地址用分号隔开,配置如下:
    <dubbo:reference id=”userService” interface=”com.test.UserServiceBo” group=”dubbo” version=”1.0.0″ timeout=”3000″ url=”dubbo://30.8.59.182:20880″/>
  • 通过文件映射
    如果服务比较多,也可以用文件映射,用 -Ddubbo.resolve.file 指定映射文件路径,此配置优先级高于 <dubbo:reference> 中的配置 ,如:
    java -Ddubbo.resolve.file=xxx.properties
    然后在映射文件 xxx.properties 中加入配置,其中 key 为服务名,value 为服务提供者
    URL:
    com.test.UserServiceBo=dubbo://30.8.59.182:20880

注:为了避免复杂化线上环境,不要在线上使用这个功能,只应在测试阶段使用。

欢迎大家加入知识星球,在知识星球里面我们会深入讨论Java并发编程,以及JUC包源码;Java类加载器原理;Spring,Springboot,Tomcat,Dubbo等开源框架的使用以及源码剖析;分享作者从毕业到现在一路走来的学习经验,如何高效学习,如何阅读源码;讨论职业面试时候会经常遇到的问题以及如何作答,读者可以识别下面二维码加入:

读者可以识别下面二维码加入:

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Dubbo剖析-服务直连

加多

加多

Java 攻城狮 at 阿里巴巴
加多,目前就职于阿里巴巴,热衷并发编程、ClassLoader,Spring等开源框架,分布式RPC框架dubbo,springcloud等;爱好音乐,运动。微信公众号:技术原始积累。知识星球账号:技术原始积累
加多

Latest posts by 加多 (see all)

FavoriteLoading添加本文到我的收藏
  • Trackback are closed
  • Comments (0)
  1. No comments yet.

You must be logged in to post a comment.

return top