一、背景

目前项目是基于dubbo做为rpc,zk为注册中心实现多个微服务之间的远程服务调用。但需要本地联调dubbo接口时,需要绕过注册中心,达到不干扰线上服务,即只订阅不注册服务的目的。

二、实现

1.修改服务提供者的配置文件:provider.xml

<dubbo:registry address="127.0.0.1:2181" register="false" />

或者

<dubbo:registry address="127.0.0.1:2181?register=false" />

register="false":禁用注册配置

2.dubbo接口本地直连设置(切记:适用于开发测试阶段,没有特定需求,线上不要使用)

  • 第一种方式:通过 -D 参数指定

在 JVM 启动参数中加入-D参数映射服务地址,如:

java -Dcom.example.modules.user.UserFacade=dubbo://localhost:20880
  • 第二种方式:在订阅配置文件consumer.xml中指定url
<dubbo:reference id="userFacade" interface="com.example.modules.user.UserFacade" url="dubbo://localhost:20880" />

注意不要把代码提交到服务器上。

  • 第三种方式:映射配置文件

(2.0 以上版本)自动加载 ${user.home}/dubbo-resolve.properties文件,项目中不需要配置。

在本机电脑用户下新建文件dubbo-resolve.properties,然后在文件中加入需要直连的服务。

# 直连服务列表
com.example.modules.user.UserFacade=dubbo://localhost:20880

如果有多个,继续添加即可,推荐使用此种方式,可以避免代码提交,方便统一管理

dubbo-本地直连的更多相关文章

  1. dubbo源码分析(一)

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  2. 用dubbo时遇到的一个序列化的坑

    首先,这是标题党,问题并不是出现在序列化上,这是报错的一部分: Caused by: com.alibaba.dubbo.remoting.RemotingException: Failed to s ...

  3. dubbo服务提供与消费

    一.前言 项目中用到了Dubbo,临时抱大腿,学习了dubbo的简单实用方法.现在就来总结一下dubbo如何提供服务,如何消费服务,并做了一个简单的demo作为参考. 二.Dubbo是什么 Dubbo ...

  4. 分布式学习系列【dubbo入门实践】

    分布式学习系列[dubbo入门实践] dubbo架构 组成部分:provider,consumer,registry,monitor: provider,consumer注册,订阅类似于消息队列的注册 ...

  5. Maven多模块,Dubbo分布式服务框架,SpringMVC,前后端分离项目,基础搭建,搭建过程出现的问题

    现互联网公司后端架构常用到Spring+SpringMVC+MyBatis,通过Maven来构建.通过学习,我已经掌握了基本的搭建过程,写下基础文章为而后的深入学习奠定基础. 首先说一下这篇文章的主要 ...

  6. Dubbo 备注

    Dubbo是阿里开源的一款服务治理中间件,主要包含如下节点: Provider: 暴露服务的服务提供方. Consumer: 调用远程服务的服务消费方. Registry: 服务注册与发现的注册中心. ...

  7. Dubbo学习小记

    前言 周一入职的新公司,到了公司第一件事自然是要熟悉新公司使用的各种技术,搭建本地的环境. 熟悉新公司技术的过程中,首先就是Maven,这个前面已经写过文章了,然后就是Dubbo----公司的服务都是 ...

  8. Running Dubbo On Spring Boot

    Dubbo(http://dubbo.io/) 是阿里的开源的一款分布式服务框架.而Spring Boot则是Spring社区这两年致力于打造的简化Java配置的微服务框架. 利用他们各自优势,配置到 ...

  9. 【转】Dubbo使用例子并且和Spring集成使用

    一.编写客户端和服务器端共用接口类1.登录接口类public interface LoginService {    public User login(String name, String psw ...

随机推荐

  1. 第五章 模块之random 、hashlib、time /datetime

    5.2 random 返回随机生成的一个实数 random.randint() 返回随机生成的一个实数 import random #调用模块​def get_random_code(length=6 ...

  2. C++ 数组和vector的基本操作

    1.静态数组的基本操作 int a[5] = {0, 3, 4, 6, 2}; 1.1 数组的遍历 1.1.1 传统的for循环遍历 int size = sizeof(a) / sizeof(*a) ...

  3. PB计算两个日期相差月份(计算工龄)

    ll_intime_y = year(date(this.object.in_factory_day[row])) ll_intime_m = month(date(this.object.in_fa ...

  4. linux主机内存告警shell脚本

    #!/bin/sh ramusage=$(free | awk '/Mem/{printf("RAM Usage: %.2f\n"), $3/$2*100}'| awk '{pri ...

  5. AdventureWorks 安装和配置[转自 微软msdn]

    AdventureWorks 安装和配置 2018/06/19 适用对象:SQL ServerAzure SQL 数据库Azure SQL 数据仓库并行数据仓库 AdventureWorks 下载链接 ...

  6. vue单页面应用加入百度统计

    版权声明:本文为CSDN博主「钟文辉」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明.原文链接:https://blog.csdn.net/qq_39753974/a ...

  7. 今天还是python游戏

    话不多说,上源码: import random, pygame, sys from pygame.locals import * FPS = 30 # frames per second, the g ...

  8. (三)react-native开发系列之开发环境集成

    先上图,由于是虚拟机中的ios虚拟器,所以有点卡 关于react-native的开发集成,主要包括以下几个方面 1.路由及页面跳转 2.数据请求的封装 3.状态的管理 4.公共方法和全局变量的封装 5 ...

  9. java基本数据类型包装

    1. 2. 左边的是对象,自动装箱为对象,右边的是基本的数据类型. 3. 如果m,n换成128就超出范围,结果就不一样. 是因为把在这区间内的值都放在了常量池里面. Integer m = Integ ...

  10. HTTP 协议部分常识简介

    1.状态码 具体的状态码可以百度查找,但是对于状态码的大致分类有一个清楚的了解 1XX   ----信息状态码------接受的请求正在处理 2XX ------成功状态码 ------请求正常处理完 ...