zoukankan      html  css  js  c++  java
  • Dubbo 配置中心、元数据中心

    配置中心

    每个服务的配置都写在自己的配置文件中,更新配置时要一台机器一台机器地修改,很不方便,

    dubbo一般使用zk作为配置管理中心,统一管理dubbo的配置,也有用diamond的。

    dubbo admin  ->  配置管理  -> 创建

    全局配置的名称使用global,对所有的服务提供者、消费者均有效,写一些公共配置,比如

    #注册中心
    dubbo.registry.address=zookeeper://192.168.1.9:2181
    #连接超时
    dubbo.registry.timeout=10000
    
    #dubbo使用的协议、端口
    dubbo.protocol.name=dubbo
    dubbo.protocol.port=20880

    配置会保存在 zkServer的/dubbo/config 中,其中全局配置保存在config下面的 dubbo/dubbo.properties 中。

    应用级别配置的名称使用服务名(dubbo.application.name),该配置只对指定的服务有效,一般写这个服务私有的配置,比如 dubbo.scan.base-packages 。

    如果全局配置中也设置了相同的配置项,以应用级配置为准(越精细的优先级越高)。

    使用配置中心后,提供者、消费者在springboot配置文件中不用写dubbo的其它配置,只写配置中心的配置即可:

    #配置中心地址
    dubbo.config-center.address=zookeeper://192.168.1.9:2181
    #连接到配置中心的超时时间,ms
    dubbo.config-center.timeout=10000

    应用启动时,会自动连接到配置中心,从配置中心获取dubbo的配置

    dubbo.scan.base-packages 这种配置,如果觉得放在配置中心代码重构修改包位置时不方便,就放在springboot配置文件中也可以。


    元数据中心

    元数据中心用于存储一些服务提供者、消费者的信息,比如dubbo版本、服务接口的信息(包括方法名、形参表、返回值类型)等等。

    dubbo支持2种元数据中心:zk、redis,此处以zk为例。

    分别在消费者、提供者中加入元数据中心的依赖:

    <dependency>
        <groupId>org.apache.dubbo</groupId>
        <artifactId>dubbo-metadata-report-zookeeper</artifactId>
        <version>2.7.6</version>
        <scope>test</scope>
    </dependency>

    使用redis作为元数据中心的话,把artifactId中的zookeeper换为redis即可。

    版本号一般要用maven统一管理dubbo各个依赖的版本,做到dubbo的依赖都是同一版本。此处未统一管理版本。

    看到作用域是test,就知道元数据中心这玩意儿是测试用的。

    然后在全局配置中加上元数据中心的配置:

    #元数据配置中心地址
    dubbo.metadata-report.address=zookeeper://192.168.1.9:2181

    一般配置个地址就可以了

    重启应用来获取新的配置,看到zkServer上产生了一个新的节点 /dubbo/metadata,

    metadata下面每个子节点都存储一个服务的元数据,provider、consumer分别存储该服务提供者、消费者的元数据,json格式,

    数据有点乱,要看的话可以找个json格式化工具格式化一下。

    元数据中心主要的功能是测试服务接口,配置元数据中心以后,可以在dubbo admin中测试服务接口。

  • 相关阅读:
    微信小程序之某个节点距离顶部和底部的距离 createSelectorQuery
    js正则手机号 验证
    算法将一个对象中的某一个key值变为true,其他值都为false
    更改上传框的大小
    Educational Codeforces Round 85 (Div. 2)
    Codeforces Round #632 (Div. 2)
    AtCoder Beginner Contest 161
    Codeforces Round #631 (Div. 2)
    Codeforces Round #630 (Div. 2)
    Codeforces Round #629 (Div. 3)
  • 原文地址:https://www.cnblogs.com/chy18883701161/p/12792374.html
Copyright © 2011-2022 走看看