欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > > 文章正文

Dubbo剖析-服务直连,Dubbo剖析-服务

来源: javaer 分享于  点击 20581 次 点评:86

Dubbo剖析-服务直连,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

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

用户点评