DUBBO注册中心

这篇具有很好参考价值的文章主要介绍了DUBBO注册中心。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

注册中心上保存四种类型的数据:

providers: 服务提供者目录,记录着服务提供者的ip、端口等信息。
consumers: 服务消费者目录,记录服务消费者的元数据信息,服务提供者并不会用到服务消费者的信息,这里要记录消费者的信息,是给服务治理中心(dubbo-admin)使用的。
routers: 用于消费者路由策略元数据信息。
configurators:用于服务者动态配置URL元数据信息。
DUBBO注册中心

以zookeeper作为注册中心


持久和临时节点
持久节点:节点会一直存在,就算建立该节点的会话断线,节点也会存在。
临时节点:会话存在,节点就存在;会话断开,节点就会被删除。

Watch机制
zookeeper节点发生变化(Znode本身的增加,删除,修改,以及子Znode的变化),zookeeper注册中心可以通过Watch机制通知到客户端。 

服务消费者的服务列表
每一个服务消费者都会在本地维持一张服务提供者的列表,在消费者第一次启动的时候,回去注册中心拉取一次完整的服务列表,然后通过watch机制监听routers、configuration、provider这三个目录的变化。如果新增了服务提供者,或者某一个提供者下线了,消费者就会收到通知,去更新自己的服务列表。

服务提供者的注册操作
当启动一个新的服务,会把服务的ip和端口注册provider下,作为一个临时节点,假如服务提供者宕机,由于是临时节点,所以节点会被删除,这样就可以触发watch机制,服务提供者启动后会监听configuration。

DUBBO控制台搭建

下载源码,打包部署! 

服务重试

服务重试 | Apache Dubbo

集群容错

集群容错 | Apache Dubbo

负载均衡

负载均衡 | Apache Dubbo

有多种级别的配置:服务端服务/方法级别、客户端服务/方法级别

多个配置是有覆盖关系的, 配置的优先级是:

    1. 客户端方法级别配置;(最优先)
    2. 客户端接口级别配置;
    3. 服务端方法级别配置;
    4. 服务端接口级别配置;(最后使用)

    <!-- 服务端服务级别 -->
    <dubbo:service interface="..." loadbalance="roundrobin" />
    <!-- 客户端服务级别 -->
    <dubbo:reference interface="..." loadbalance="roundrobin" />
    <!-- 服务端方法级别 -->
    <dubbo:service interface="...">
        <dubbo:method name="hello" loadbalance="roundrobin"/>
    </dubbo:service>
    <!-- 客户端方法级别 -->
    <dubbo:reference interface="...">
        <dubbo:method name="hello" loadbalance="roundrobin"/>
    </dubbo:reference>

 虽说以上配置有全封闭服务端配置的,有针对客户端配置的,但是,真正使负载均衡起作用的是,客户端在发起调用的时候,使用相应负载均衡算法进行选择调用。(服务端不可能有这能力)

 另外,控制台可以设置负载均衡!!!

 Dubbo中,先通过路由,从多个 Provider 中按照路由规则,选出一个子集。再根据负载均衡从子集中选出一个 Provider 进行本次调用。如果调用失败了,根据集群容错策略,进行重试或定时重发或快速失败等。 可以看到Dubbo中的路由,负载均衡和集群容错发生在一次RPC调用的不同阶段。最先是路由,然后是负载均衡,最后是集群容错。

直连提供者

直连提供者 | Apache Dubbo文章来源地址https://www.toymoban.com/news/detail-413463.html

只订阅

到了这里,关于DUBBO注册中心的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于Dubbo和Nacos搭建微服务的配置中心和服务注册中心

    1.添加nacos依赖 2.配置application.properties PS:nacos2.0除了需要8848的端口之外,还新增了端口+1000的新端口用于客户端和服务端GRPC通信的端口,所以如果是自己部署的nacos需要放开这俩个端口,服务才可以启动成功。 3.配置类 3.1 添加Spring Cloud原生注解 @EnableDiscoveryClient 3.2 客户端服

    2024年02月16日
    浏览(58)
  • SpringCloud + Gateway(网关) + Nacos(注册中心+配置中心)+ Dubbo(内部服务调用)

    Apache Dubbo是一款微服务开发框架,它提供了 RPC通信 与 微服务治理 两大关键能力 1、协议支持方面 Feign更加优雅简单。Feign是通过REST API实现的远程调用,基于Http传输协议,服务提供者需要对外暴露Http接口供消费者调用,服务粒度是http接口级的。通过短连接的方式进行通信,

    2024年02月06日
    浏览(226)
  • Dubbo 应用切换 ZooKeeper 注册中心实例,流量无损迁移

    首先思考一个问题:如果 Dubbo 应用使用 ZooKeeper 作为注册中心,现在需要切换到新的 ZooKeeper 实例,如何做到流量无损? 本文提供解决这个问题的一种方案。 有两个基于 Dubbo 的微服务应用,一个是服务提供者,简称 Provider,另一个是服务消费者,简称 Consumer; 使用 ZooKeepe

    2024年02月10日
    浏览(38)
  • 在项目中同时使用SpringCloud和Dubbo,注册中心选用Eureka?

    在pom.xml文件中添加Dubbo相关依赖:服务提供者和服务消费者都需要 1)配置服务提供者 1、在配置文件中配置Dubbo的相关信息: 2、在服务提供者的启动类上添加@EnableDubbo注解: 3、编写服务提供者的接口和实现类: 添加@Service,指定interfaceClass属性来指定要暴露的接口 2)配置

    2024年01月18日
    浏览(47)
  • 手把手带你实现Dubbo集成Nacos作为注册中心(超详细+全代码)

    Nacos简介 什么是Nacos? Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。 Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服

    2024年02月09日
    浏览(55)
  • Dubbo3使用Zookeeper作为注册中心的方案讨论!详解DubboAdmin与PrettyZoo来监控服务的优劣!

    文章目录 一:Dubbo注册中心的基本使用 二:Zookeeper注册中心的使用 1:依赖引入 2:实际开发 三:Zookeeper作为注册中心的使用展示 1:启动注册Zookeeper服务 2:引入注册中心 (一):Provider (二):Consumer 3:启动服务结果展示 4:监控服务的两种手段         我们使用的和分析讲解

    2024年02月05日
    浏览(41)
  • dubbo监控中心dubbo-admin老版本(dubbo-ops)使用

    1、dubbo分组 在dubbo中,可以指定group,如下: 使用properties如下: group分组的作用: 在服务器资源紧缺的情况下,group可以用来隔离开发环境和测试环境:同一个服务不同的版本可以在相同的注册中心中注册,根据group来隔离不同版本之间的影响 如: 项目开发环境: dubbo.reg

    2024年02月12日
    浏览(47)
  • Dubbo-admin监控中心

    dubbo-admin下载路径 图1-1 dubbo-admin项目文件展示 在浏览器中输入http://localhost:38083 登录 账号root 密码root ,进入Dubbo Admin 图1-2 Dubbo Admin 界面 图1-3 启动provider项目 图1-4 启动consumer项目 图1-5 Dubbo Admin 查询结果 在Dubbo Admin中 还可以对provider进行测试 图1-6 测试provider 图1-7 查看provi

    2024年01月18日
    浏览(38)
  • zookeeper 查询注册的 dubbo 服务

    1. 连接zookeeper 服务端 使用bin 目录下zk客户端连接服务器, ./zkCli.sh -server  127.0.0.1:2181 2. 查询Dubbo 服务 # 查询所有服务 ls /dubbo   # 查询指定服务调用 ls /dubbo/服务名(接口地址)/consumers   # 查询指定服务调用 ls /dubbo/服务名(接口地址)/providers 3. 返回值实例 返回值查看不是很明显

    2024年02月10日
    浏览(48)
  • 记一次dubbo消费者注册失败找不到服务提供者问题

    项目分多套环境,其中一套环境重新部署时,频繁出现消费者找不到服务提供者的错误 经过多次重启后才有可能恢复正常,而其他环境并没有发现此问题 怀疑点: 1.消费者和服务提供者dubbo版本对不上 2.服务提供者没有注册上服务 3.注册中心有问题 逐一排查: 1.消费者和服

    2023年04月18日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包