Dubbo实战(三)多注册中心配置

2023-10-27

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/FX_SKY/article/details/51935533

本文将展示如何在Dubbo中进行多注册中心配置。

开发环境

  • JDK 1.7
  • Maven 3.3.9
  • Spring 4.2.7.RELEASE

Spring配置

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:task="http://www.springframework.org/schema/task" xmlns:util="http://www.springframework.org/schema/util" xmlns:jaxws="http://cxf.apache.org/jaxws"
       xsi:schemaLocation="
       http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/util
       http://www.springframework.org/schema/util/spring-util.xsd
       http://www.springframework.org/schema/context
       http://www.springframework.org/schema/context/spring-context.xsd"
       default-lazy-init="false">

    <context:component-scan base-package="com.ricky.dubbo" />

    <context:annotation-config />

    <import resource="spring-dubbo.xml"/>

</beans>

待暴露的服务

package com.ricky.dubbo.provider.impl;

import org.springframework.stereotype.Service;

import com.ricky.dubbo.api.DemoService;
import com.ricky.dubbo.api.model.User;

@Service("demoService")
public class DemoServiceImpl implements DemoService {

    @Override
    public String sayHello(String name) {
        return "Hello " + name;
    }

    @Override
    public User findUserById(long id) {

        User user = new User();
        user.setId(id);
        user.setName("Ricky");
        user.setAge(26);

        return user;
    }

}
package com.ricky.dubbo.provider.impl;

import org.springframework.stereotype.Service;

import com.ricky.dubbo.api.HelloService;

@Service("helloService")
public class HelloServiceImpl implements HelloService {

    @Override
    public String sayHi(String msg) {

        return "Hello "+msg;
    }

}

1、多注册中心注册

比如:有些服务只在A机房部署,而B机房的其它应用又需要引用此服务,那么可以将服务同时注册到两个注册中心。

spring-dubbo-multi-registry.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
    xsi:schemaLocation="http://www.springframework.org/schema/beans        http://www.springframework.org/schema/beans/spring-beans.xsd        http://code.alibabatech.com/schema/dubbo        http://code.alibabatech.com/schema/dubbo/dubbo.xsd">

    <!-- 提供方应用信息,用于计算依赖关系 -->
    <dubbo:application name="dubbo-provider-app"  />

    <!-- 多注册中心配置 -->
    <dubbo:registry id="qd_registry" address="zookeeper://127.0.0.1:2181" />
    <dubbo:registry id="wh_registry" address="zookeeper://127.0.0.1:2183"  default="false" />

    <!-- 用dubbo协议在20880端口暴露服务 -->
    <dubbo:protocol name="dubbo" port="20880" />

    <!-- 声明需要暴露的服务接口 -->
    <dubbo:service interface="com.ricky.dubbo.api.HelloService" ref="helloService" registry="qd_registry,wh_registry"  />

</beans>

2、不同服务使用不同注册中心

比如:CRM有些服务是专门为国际站设计的,有些服务是专门为中文站设计的。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
    xsi:schemaLocation="http://www.springframework.org/schema/beans        http://www.springframework.org/schema/beans/spring-beans.xsd        http://code.alibabatech.com/schema/dubbo        http://code.alibabatech.com/schema/dubbo/dubbo.xsd">

    <!-- 提供方应用信息,用于计算依赖关系 -->
    <dubbo:application name="dubbo-provider-app"  />

    <!-- 多注册中心配置 -->
    <dubbo:registry id="qd_registry" address="zookeeper://127.0.0.1:2181" />
    <dubbo:registry id="wh_registry" address="zookeeper://127.0.0.1:2183"  default="false" />

    <!-- 用dubbo协议在20880端口暴露服务 -->
    <dubbo:protocol name="dubbo" port="20880" />

    <!-- 声明需要暴露的服务接口 -->
    <dubbo:service interface="com.ricky.dubbo.api.DemoService" ref="demoService" registry="qd_registry" />
    <dubbo:service interface="com.ricky.dubbo.api.HelloService" ref="helloService" registry="wh_registry"  />

</beans>

 

 

 

 

https://blog.csdn.net/top_code/article/details/51935533

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Dubbo实战(三)多注册中心配置 的相关文章

  • dubbo分布式服务化框架的使用遇到的坑

    原文地址 https blog csdn net zollty article details 53958493 dubbo常见问题汇总 https blog csdn net tanga842428 article details 522
  • Dubbo zookeeper 初探

    原文地址 http blog csdn net wxwzy738 article details 16330383 转 http blog csdn net u011270461 article details 12144623 建议参考资
  • MyBatis 深入浅出

    一 MyBatis 基础 1 什么是MyBatis mybatis是一个持久层框架 用java编写的 它封装了jdbc操作的很多细节 使开发者只需要关注sql语句本身 而无需关注注册驱动 创建连接等繁杂过程 它使用了ORM思想实现了结果集的
  • Dubbo源码分析----过滤器之ActiveLimitFilter

    ActiveLimitFilter也是用来做并发控制的 区别在于ExecuteLimitFilter作用于服务端 而ActiveLimitFilter作用于客户端 看下官网的例子
  • dubbo分布式日志跟踪

    dubbo分布式日志追踪 需要修改两个地方 一个是consumer端的 InvokerInvocationHandler java 红色是修改的地方 public class InvokerInvocationHandler impleme
  • springboot集成dubbo(详细配置)

    前言 首先要搭建zookeeper环境并启动 可参照window下搭建zookeeper 半生归来仍少年的博客 CSDN博客 dubbo管理平台搭建 下载 dubbo admin 2 5 8 war 互联网文档类资源 CSDN下载 放到to
  • Dubbo各种协议

    原文地址 http dubbo io User Guide zh htm UserGuide zh 协议参考手册 协议参考手册 外链图片转存失败 源站可能有防盗链机制 建议将图片保存下来直接上传 img QStFh0Ov 166207932
  • 【六袆 - Dubbo】Dubbo服务的简单调用;

    这里写目录标题 1 Dubbo服务的基本调用过程 1 1在Java中定义dubbo服务 以interface接口的方式 1 2 Provider提供服务的具体实现 并声明为dubbo服务 1 3 Consumer使用dubbo服务 1 Du
  • Dubbo调用过程监控

    MonitorFilter 主要对调用过程进行监控 public Result invoke Invoker
  • 「从零开始造 RPC 轮子系列」01 我为什么要去造一个轮子?

    目录 好日子 为什么你需要学习造轮子 投资自己 不要成为调包侠 通过造轮子你能学到什么 下一步计划 好日子 宣布一件事情 好日子 12月有个好日子 20211202 从左往右读 接着从右往左读你会发现居然是对称的 这是属于程序员的 浪漫 身
  • 6种微服务RPC框架,你知道几个?

    6种微服务RPC框架 你知道几个 开源 RPC 框架有哪些呢 一类是跟某种特定语言平台绑定的 另一类是与语言无关即跨语言平台的 跟语言平台绑定的开源 RPC 框架主要有下面几种 Dubbo 国内最早开源的 RPC 框架 由阿里巴巴公司开发并
  • 面试官问:SpringBoot中@Async默认线程池导致OOM如何解决?

    前言 1 最近项目上在测试人员压测过程中发现了OOM问题 项目使用springboot搭建项目工程 通过查看日志中包含信息 unable to create new native thread 内存溢出的三种类型 1 第一种OutOfMem
  • Dubbo架构整体设计

    一 Dubbo调用关系说明 1 1 组成部分 在这里主要由四部分组成 Provider 暴露服务的服务提供方 Protocol 负责提供者和消费者之间的协议交互数据 Service 真实的业务服务信息 可以理解成接口和实现 Containe
  • RPC实践(四)Dubbo实践

    Dubbo是一款重要的RPC框架 它是Alibaba开源的分布式服务框架 它主要特点 提供了注册中心来进行服务的管理 支持zookeeper redis等方式来实现注册中心 Dubbo按照分层的方式来架构 使用这种方式可以使各个层之间解耦合
  • java使用MD5生成摘要

    对value进行hash处理 return hash处理结果 public static String digest String input int length 32 try MessageDigest md MessageDigest
  • Thrift、Dubbo、Spring Cloud 和 gRPC

    何为RPC RPC Remote Procedure Call 远程过程调用 是一种进程间通信方式 是一种技术的思想 而不是规范 它允许程序调用另一个地址空间 通常是共享网络的另一台机器上 的过程或函数 而不用程序员显式编码这个远程调用的细
  • 放弃Dubbo,选择最流行的Spring Cloud微服务架构实践与经验总结

    51CTO com原创稿件 Spring Cloud 在国内中小型公司能用起来吗 从 2016 年初一直到现在 我们在这条路上已经走了一年多 在使用 Spring Cloud 之前 我们对微服务实践是没有太多的体会和经验的 从最初的开源软件
  • SpringCloud | Dubbo 微服务实战——注册中心详解

    前言 作者主页 雪碧有白泡泡 个人网站 雪碧的个人网站 Eureka Nacos Consul Zookeeper在Spring Cloud和Dubbo中实战 引言 在项目开发过程中 随着项目不断扩大 也就是业务的不断增多 我们将采用集群
  • Zookeeper 和 Dubbo 的关系?

    Zookeeper的作用 zookeeper用来注册服务和进行负载均衡 哪一个服务由哪一个机器来提供必需让调用者知道 简单来说就是ip地址和服务名称的对应关系 当然也可以通过硬编码的方式把这种对应关系在调用方业务代码中实现 但是如果提供服务
  • 说说 Dubbo 与 Spring Cloud 的区别?

    Dubbo 和 Spring Cloud 都是流行的分布式服务框架 但它们在设计和使用上有一些不同之处 以下是它们之间的一些主要区别 开发语言 Dubbo 主要基于 Java 而 Spring Cloud 是基于 Spring Boot 的

随机推荐

  • 【备忘录】英译汉接口

    import requests import random import json from hashlib import md5 Set your own appid appkey appid 2xxx appkey kxxx For l
  • 数字电路-二进制转BCD码

    BCD码实际上就是将原本的十进制数的每一位用一个4位二进制数表示 每一位0 9 二进制4位能够表达的数字范围是0 15 由此可见BCD码的一段与普通四位二进制来表示十进制位有6的进制差 所以这就是二进制转化为BCD码的关键所在 下面来讲讲主
  • TP5 一对多关联查询

    A表 car 购物车 goodid 商品ID sizeid 规格ID B表 commondity 商品表 id 对应goodid 商品名称 title C表 size 规格表 id对应sizeid 规格名称 text 在购物车页面 我们需要
  • CMake 编译时出现错误 coffe转换到 COFF 期间失败: 文件无效或损坏

    转 https blog csdn net feiyang2010jin article details 46576463 C Windows Microsoft NET Framework v4 0 30319 D Program Fil
  • 如何修复d3dcompiler_47.dll缺失?多种解决方法分享

    在使用Windows操作系统的过程中 有时候会遇到d3dcompiler 47 dll缺失的情况 这个问题可能会导致某些应用程序无法正常运行 因此需要及时解决 本文将介绍如何修复d3dcompiler 47 dll缺失的问题 一 什么是d3
  • 服务器怎么用u盘传文件进去_本机向windows服务器传输文件的三种方法

    闲来无事 在腾讯云上申请了一个免费的服务器 想将自己写的网页发布到服务器上 服务器的申请很简单 百度搜索 腾讯云 然后新人第一次注册能申请到免费一个月的云主机 虽然配置不怎么高 但是还是能用的 这是我申请到一个云主机 那么如何将我们本机的文
  • 关于在宸曜科技7160gc上的ubuntu16.04系统下计算资源浪费问题

    1 如果使用核显来显示会占用cpu的资源 即使此时hdmi的线插在显卡上 此时会影响使用cpu来执行程序的效率 最直接体现的是程序的数据发送频率会降低很多 2 如何确定是否是cpu显示还是显卡显示了 需要通过system setting里面
  • 南科大于仕琪团队招聘研究助理教授,博士后

    南方科技大学于仕琪副教授团队招聘研究助理教授 博士后 博士生和硕士生 团队特色 专注步态识别方向十余年 在步态识别方向具有较高的影响力 研究助理教授 研究方向 步态识别 行人视频合成 图像和视频中的人体建模 视频中人的行为分析及相关 要求
  • 分布式系统架构——CAP理论

    1 什么是CAP 在分布式系统中 任何存储系统 有状态服务 都会涉及到CAP定理 Consistency 一致性 简称C 在同一时刻所有节点是具有同样的数据副本 每个节点的数据要保证实时同步 Availability 可用性 简称A 对于一
  • Ubuntu14.04 :By not providing "FindEigen3.cmake" in CMAKE_MODULE_PATH

    Ubuntu14 04 By not providing FindEigen3 cmake in CMAKE MODULE PATH 今天下载了hector slam的源码想要跑一下 结果编译不能通过 并且一直出现如下错误 烦得一逼 研究了
  • 兼容性测试真实案例-餐饮APP

    兼容性测试真实案例 某餐饮APP 项目背景 APP是以电商加直播为载体 供应链为核心 辅以短视频和直播内容分销带货 以及积分商城体系 本项目主要对APP的商品列表及商品采购流程及涉及页面 针对不同品牌 操作系统 分辨率的机型 验证APP是否
  • jenkins和jdk安装教程(安装支持jdk8的最新版本)

    1 安装版本查看 Jenkins稳定版 2 进入清华镜像 下载对应版本的rpm包 清华镜像 3 已rpm安装过Jenkins 现在先卸载 1 卸载 rpm e jenkins 2 检查是否卸载成功 rpm ql jenkins 3 彻底删除
  • (大集合)AI工具和用法汇总—集合的集合

    AI 工具和用法汇总 汇集整理 by Staok 瞰百 源于相关资料在我这慢慢越积累越多 到了不得不梳理的程度 文中有许多内容作者还没有亲自尝试 所以很多内容只是罗列 但信息大源都已给出 授人以渔 欢迎 PR 补充细节内容 比如 好的教程
  • HTML+CSS简单复习

    目录 什么是HTML CSS VSCode编辑器 HTML基本结构和属性 HTML初始代码 HTML注释 标题与段落 文本修饰标签 图片标签 路径的引入 链接标签 锚点 特殊字符 列表标签 表格标签 表单标签 div和span CSS基础语
  • 【机器学习笔记4】逻辑回归模型

    目录 什么是逻辑回归 Sigmoid函数 决策边界 逻辑回归的损失函数 为什么平方误差模型不可行 对数损失函数 单个样例损失 整体损失函数 梯度下降算法 补充 F1 score评价指标 F1 Score简介 相关概念 F Score 示例及
  • 第一次实践一个多文件的代码

    收获 1 ifndef防止头文件重复包含 为了避免同一个头文件被包含 include 多次 C C 中有两种宏实现方式 一种是 ifndef方式 另一种是 pragma once方式 ifndef 标识符A 每一个头文件都要有自己独特的标识
  • 小程序通过webview实现本地任意文件上传

    微信小程序做文件上传的时候 只能选择相册的图片或者视频 没办法选择手机内存卡里的文件 比如 word pdf文件等等 下面可以通过 webview 的方式 借用 h5 的方式即可实现上面的功能 添加业务域名 webview里面打开的地址 首
  • 【pytorch】pytorch-yolov3拍照并保存,进行检测后遍历所有图片并显示图片

    参看摄像头参数 v4l2 ctl d dev video0 all 安装numpy sudo apt get install python numpy 下载onnx pip install onnx 效果图 拍照部分 url http 19
  • HashMap实现原理及源码分析

    哈希表 hash table 也叫散列表 是一种非常重要的数据结构 应用场景及其丰富 许多缓存技术 比如memcached 的核心其实就是在内存中维护一张大的哈希表 而HashMap的实现原理也常常出现在各类的面试题中 重要性可见一斑 本文
  • Dubbo实战(三)多注册中心配置

    版权声明 本文为博主原创文章 未经博主允许不得转载 https blog csdn net FX SKY article details 51935533 本文将展示如何在Dubbo中进行多注册中心配置 开发环境 JDK 1 7 Maven