Dubbo消费端直连提供者(开发调试)

Dubbo 官方文档:

用户指南 >> 示例 >> 直连提供者



注意点:

1、 直连提供者只需要在消费端设置,url指向本地的服务地址,如此便可以直接调用本地服务。

通过打断点本地调试,客户端可能回报错:“服务异常,异常代码:2:如有疑问:请联系管理员!”,是正常的,因为我们断点拦截了,dubbo请求超时。

2、 ${user.home}指的是当前操作系统用户目录,如 Win7 系统 Administrator 的用户目录就是 C:\Users\Administrator

dubbo-resolve.properties

//key是服务名,value是服务提供者ip
wusc.edu.pay.facade.user.service.MerchantOnlineFacade=dubbo\://localhost\:20818

Dubbo服务只订阅(开发调试)

Dubbo官方文档:

用户指南 >> 示例 >> 只订阅



如果代码写了一部分,需要测试,需要将本地的服务注册到注册中心,可是其他的消费者也可能消费到这个服务提供者,会导致报错,为了确保本地的调试不影响公共的环境,可以利用服务只订阅。

就是连到了注册中心,但是没有把他的服务注册到注册中心,但是能订阅到依赖的服务。

就像用户服务本身就是服务,依赖于其他的服务,比如账户服务,因为依赖于其他服务,那么在启动的过程中,就需要连到注册中心,使得能够订阅的到依赖的服务。但是用户服务,本身也是一个服务提供者,本地开发需要连接用户服务,通过配置的方式确保服务不注册到注册中心,在开发的过程中,需要连接到用户服务,就可以利用直连提供者进行本地的调试。

需配置:

registry=“false”

上图中只订阅的第一人称是:Develop Provider

上面例子中的用户服务的dubbo配置文件

//这里虽然还是配置的注册中心,但是只是去连接,使得能够订阅到依赖的服务,并没有把自己注册进去
dubbo.registry.address=192.168.1.71:2181
...
<dubbo:redistry protocol="zookeeper" address="${dubbo.redistry.address}" registry="false">

registry="false"这个配置的意思就是自己本身不想服务中心注册,但是可以订阅依赖的服务

就像上面的例子中的用户服务,不注册,但是可以订阅自己依赖的账户服务。

不加registry=“false”,这个配置的时候,启动本地服务在dubbo管控台是能够看到本地的应用注册进去的,这样测试人员进行测试的时候就可能调用到本地正在开发的这个服务,开启了这个配置之后,在dubbo的管控台中这个服务就消失了,所以本地的消费者不论怎么调用都不会调用到这个正在开发的服务了。

注意点:

1、“只订阅”指的是需要做开发调试的服务提供者,只向注册中心订阅其所依赖的服务,但 不向注册中心注册其本身可以提供的服务。

2、“只订阅”需要结合“直连提供者”配置来进行调用测试。

示例:

在provider配置

<dubbo:redistry protocol="zookeeper" address="${dubbo.redistry.address}" registry="false">

在consumer配置

<dubbo:reference id="xxx" interface="xxx" url="localhost:2089">

Dubbo服务只注册

Dubbo 官方文档:

用户指南 >> 示例 >> 只注册



Dubbo入门到精通学习笔记(十二):Dubbo消费端直连提供者(开发调试)、Dubbo服务只订阅(开发调试)、Dubbo服务只注册的更多相关文章

  1. Dubbo入门到精通学习笔记(二):Dubbo管理控制台、使用Maven构建Dubbo的jar包、在Linux上部署Dubbo privider服务(shell脚本)、部署consumer服务

    文章目录 Dubbo管理控制台 1.Dubbo管理控制台的主要作用: 2.管理控制台主要包含: 3.管理控制台版本: 安装 Dubbo 管理控制台 使用Maven构建Dubbo服务的可执行jar包 D ...

  2. Dubbo入门到精通学习笔记(二十):MyCat在MySQL主从复制的基础上实现读写分离、MyCat 集群部署(HAProxy + MyCat)、MyCat 高可用负载均衡集群Keepalived

    文章目录 MyCat在MySQL主从复制的基础上实现读写分离 一.环境 二.依赖课程 三.MyCat 介绍 ( MyCat 官网:http://mycat.org.cn/ ) 四.MyCat 的安装 ...

  3. Dubbo入门到精通学习笔记(十):dubbo服务集群 、Dubbo分布式服务子系统的划分、Dubbo服务接口的设计原则

    文章目录 dubbo服务集群 Dubbo服务集群部署 Dubbo服务集群容错配置--集群容错模式 1.Failover Cluster 失败自动切换,当出现失败,重试其它服务器.`(缺省) 通常用于读 ...

  4. Dubbo入门到精通学习笔记(三):持续集成管理平台之SVN版本管理系统的安装和使用

    文章目录 持续集成管理平台介绍 持续集成介绍 持续集成管理平台的组成 持续集成实践介绍 即将学习 SVN版本管理系统的安装 安装 Subversion + Apache 安装 jsvnadmin 简单 ...

  5. Dubbo入门到精通学习笔记(九):简易版支付系统介绍、部署(单节点)

    文章目录 部署(单节点) 一.前期准备 二.对部署环境进行规划 创建数据库 调整公共配置文件 应用部署前期准备 部署服务 部署 Web 应用 部署定时任务 一. 工程结构 第三方支付系统架构 pay- ...

  6. Dubbo入门到精通学习笔记(七):基于Dubbo的分布式系统架构介绍(以第三方支付系统架构为例)、消息中间件的作用介绍

    文章目录 架构简单介绍 消息中间件在分布式系统中的作用介绍 消息中间件的定义 消息中间件的作用 应用场景 JMS(Java Message Service) JMS消息模型 实现了JMS规范的消息中间 ...

  7. Dubbo入门到精通学习笔记(一):Dubbo对传统工程进行改造、注册中心安装(Zookeeper-3.4.6)、工程结构优化

    文章目录 改造思路 样例工程:传统的单工程项目(edu-demo) 模型结构 思路 改成dubbo调用方式后的工程结构 部署环境规划 改造 愚公移山 迁移包 迁移页面: 迁移配置相关 新项目的主要作用 ...

  8. Dubbo入门到精通学习笔记(十五):Redis集群的安装(Redis3+CentOS)、Redis集群的高可用测试(含Jedis客户端的使用)、Redis集群的扩展测试

    文章目录 Redis集群的安装(Redis3+CentOS) 参考文档 Redis 集群介绍.特性.规范等(可看提供的参考文档+视频解说) Redis 集群的安装(Redis3.0.3 + CentO ...

  9. Dubbo入门到精通学习笔记(十六):Keepalived+Nginx实现高可用Web负载均衡

    文章目录 Keepalived+Nginx实现高可用Web负载均衡 Keepalived+Nginx实现高可用Web负载均衡 高可用架构篇 Keepalived + Nginx 实现高可用 Web 负 ...

随机推荐

  1. 安装纯净版debian!

    kali更新了1.1.0a,不知道新版的内核哪地方有bug,用着用着就卡死了,一怒之下卸载了装debian. 下载的netinst只有200M,基本上就是刚好能用,不要用硬盘装,会找不到网卡,无线也没 ...

  2. php自带函数大全

    php自带函数大全 http://blog.csdn.net/hopewtc/article/details/6797326   Abs: 取得绝对值.Acos: 取得反余弦值.ada_afetch: ...

  3. ASP.NET Core学习——6

    依赖注入DI ASP.NET Core的底层设计支持和使用依赖注入.ASP.NET Core应用程序可以利用内置的框架服务将它们注入到启动类的方法中,并且应用程序服务能够配置注入. 1.什么是依赖注入 ...

  4. MySQl 截取函数 left(),right(),substring(),substring_index() 的用法

    1. 字符串截取:left(str, length) mysql> select left('sqlstudy.com', 3); +-------------------------+ | l ...

  5. js千位符 | js 千位分隔符 | js 金额格式化

    js 千位分隔符 千位分隔符,其实就是数字中的逗号.依西方的习惯,人们在数字中加进一个符号,以免因数字位数太多而难以看出它的值.所以人们在数字中,每隔三位数加进一个逗号,也就是千位分隔符,以便更加容易 ...

  6. Rust <5>:测试

    测试运行顺序:单元测试(同处于源文件中,以 #[cfg(tests)] 标记 mod,以 #[test] 标记 function).集成测试(位于项目根路径下的 tests 目录下,不需要 #[cfg ...

  7. Apache的虚拟主机功能(基于IP、域名、端口号)

    Apache虚拟主机就是在一个Apache服务器上配置多个虚拟主机,实现一个服务器提供多站点服务,其实就是访问同一个服务器上的不同目录. 主要有三种方法: 1.通过不同的IP地址 2.通过不同的域名 ...

  8. git 关于commit命令的修改

    1 修改最后一次提交的信息 git commit --amend 2 对于历史提交 git rebase -i HEAD~5 没毛病,

  9. Promise篇

    Promise 原理解析与实现(遵循Promise/A+规范)   1 什么是Promise? Promise是JS异步编程中的重要概念,异步抽象处理对象,是目前比较流行Javascript异步编程解 ...

  10. Python判断一个字符串中是否存在多个子串中的一个

    在使用python的开发过程中,常常需要判断,字符串中是否存在子串的问题, 但判断一个字符串中是否存在多个字串中的一个时,如if (a or b) in c或者if x contains a|b|c| ...