搭建Dubbo源码环境

33 篇文章 0 订阅
3 篇文章 0 订阅

要搭建Dubbo 源码环境,你首先需要下载源码。这里你可以直接从官方仓库 https://github.com/apache/dubbo
fork一个到自己的仓库
在这里插入图片描述

从自己仓库下载
git clone git@github.com:ln0491/dubbo.git
因为目前最新的是 Dubbo 2.7.7 版本,用这个新版本
git checkout -b dubbo-2.7.7 dubbo-2.7.7 

执行 mvn 命令进行编译
mvn clean install -Dmaven.test.skip=true 

时间比较久
在这里插入图片描述

命令转换成 IDEA 项目:

mvn idea:idea // 要是执行报错,就执行这个 mvn idea:workspace 

然后,在 IDEA 中导入源码,因为这个导入过程中会下载所需的依赖包,所以会耗费点时间。
在这里插入图片描述

模块
  • dubbo-common 模块:
    Dubbo 的一个公共模块,其中有很多工具类以及公共逻辑,例如Dubbo SPI 实现、时间轮实现、动态编译器等。
    在这里插入图片描述

  • dubbo-remoting 模块:

  • Dubbo 的远程通信模块,其中的子模块依赖各种开源组件实现远程通信。在 dubbo-remoting-api 子模块中定义该模块的抽象概念,在其他子模块中依赖其他开源组件进行实现,例如,dubbo-remoting-netty4 子模块依赖 Netty 4 实现远程通信,dubbo-remoting-zookeeper 通过 Apache Curator 实现与 ZooKeeper 集群的交互。

  • 在这里插入图片描述

  • dubbo-rpc 模块:

  • Dubbo 中对远程调用协议进行抽象的模块,其中抽象了各种协议,依赖于 dubbo-remoting 模块的远程调用功能。dubbo-rpc-api 子模块是核心抽象,其他子模块是针对具体协议的实现,例如,dubbo-rpc-dubbo 子模块是对 Dubbo 协议的实现,依赖了 dubbo-remoting-netty4 等 dubbo-remoting 子模块。 dubbo-rpc 模块的实现中只包含一对一的调用,不关心集群的相关内容。
    在这里插入图片描述

  • dubbo-cluster 模块:
    Dubbo 中负责管理集群的模块,提供了负载均衡、容错、路由等一系列集群相关的功能,最终的目的是将多个 Provider 伪装为一个 Provider,这样 Consumer 就可以像调用一个 Provider 那样调用 Provider 集群了。

  • dubbo-registry 模块:

  • Dubbo 中负责与多种开源注册中心进行交互的模块,提供注册中心的能力。其中, dubbo-registry-api 子模块是顶层抽象,其他子模块是针对具体开源注册中心组件的具体实现,例如,dubbo-registry-zookeeper 子模块是 Dubbo 接入 ZooKeeper 的具体实现。

  • 在这里插入图片描述

  • dubbo-monitor 模块:

Dubbo 的监控模块,主要用于统计服务调用次数、调用时间以及实现调用链跟踪的服务。

  • dubbo-config 模块:
    Dubbo 对外暴露的配置都是由该模块进行解析的。例如,dubbo-config-api 子模块负责处理 API 方式使用时的相关配置,dubbo-config-spring 子模块负责处理与 Spring 集成使用时的相关配置方式。有了 dubbo-config 模块,用户只需要了解 Dubbo 配置的规则即可,无须了解 Dubbo 内部的细节。

在这里插入图片描述

  • dubbo-metadata 模块:
    Dubbo 的元数据模块(本课程后续会详细介绍元数据的内容)。dubbo-metadata 模块的实现套路也是有一个 api 子模块进行抽象,然后其他子模块进行具体实现
    在这里插入图片描述

  • dubbo-configcenter 模块:
    Dubbo 的动态配置模块,主要负责外部化配置以及服务治理规则的存储与通知,提供了多个子模块用来接入多种开源的服务发现组件
    在这里插入图片描述

Demo这里使用Zookeeper下载

http://archive.apache.org/dist/zookeeper/
在这里插入图片描述

在这里插入图片描述
运行Demo中的dubbo-demo-xml-provider中的Application启动提提供者

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值