克隆代码

git clone git@github.com:apache/dubbo.git

执行maven相关命令:

mvn clean install -Dmaven.test.skip=true

mvn idea:idea

耐心等待几分钟,然后将项目导入到idea中.

将dubbo源码导入进idea,项目结构如下:

dubbo-common 公共逻辑模块:包括 Util 类和通用模型。
dubbo-remoting 远程通讯模块:相当于 Dubbo 协议的实现,如果 RPC 用 RMI协议则不需要使用此包。
dubbo-rpc 远程调用模块:抽象各种协议,以及动态代理,只包含一对一的调用,不关心集群的管理。
dubbo-cluster 集群模块:将多个服务提供方伪装为一个提供方,包括:负载均衡, 容错,路由等,集群的地址列表可以是静态配置的,也可以是由注册中心下发。
dubbo-registry 注册中心模块:基于注册中心下发地址的集群方式,以及对各种注册中心的抽象。
dubbo-monitor 监控模块:统计服务调用次数,调用时间的,调用链跟踪的服务。
dubbo-config 配置模块:是 Dubbo 对外的 API,用户通过 Config 使用Dubbo,隐藏 Dubbo 所有细节。
dubbo-container 容器模块:是一个 Standlone 的容器,以简单的 Main 加载 Spring 启动,因为服务通常不需要 Tomcat/JBoss 等 Web 容器的特性,没必要用 Web 容器去加载服务。

​ 后面要启动项目运行demo,目前先着重看一下dubbo-registry和dubbo-demo两个子工程的项目结构,dubbo项目中每个子工程的结构都类似.

​ dubbo-registry子工程项目结构如下:

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

dubbo-demo子工程项目结构如下:

​ dubbo-demo-api是抽象api工程,服务提供者和消费者均需引入该子工程。其中子模块dubbo-demo-annotation是以注解的方式实现的demo示例,同理子模块dubbo-demo-xml是以xml配置的方式实现的demo示例。

​ 启动注册中心:

​ dubbo的demo中默认使用zk作为注册中心,zk环境搭建:

# 下载地址
https://archive.apache.org/dist/zookeeper/zookeeper-3.8.0/apache-zookeeper-3.8.0-bin.tar.gz# 解压
tar -zxvf apache-zookeeper-3.8.0-bin.tar.gz
# 启动
./bin/zkServer.sh start# 启动成功标识
ZooKeeper JMX enabled by default
Using config: /home/renchuangege/develop/dev-run-soft/apache-zookeeper-3.8.0-bin/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

出现如下报错是因为conf目录下没有zoo.cfg配置文件,将zoo_sample.cfg改名为zoo.cfg即可:

ZooKeeper JMX enabled by default
Using config: /apache-zookeeper-3.8.0/bin/…/conf/zoo.cfg
grep: /apache-zookeeper-3.8.0/bin/…/conf/zoo.cfg: 没有那个文件或目录
grep: /apache-zookeeper-3.8.0/bin/…/conf/zoo.cfg: 没有那个文件或目录
FAILED TO WRITE PID

至此,环境搭建完毕.

dubbo-源码环境搭建相关推荐

  1. spring boot 源码_SpringBoot2.1.x源码环境搭建详解

    前言 笔者试着从GitHub上拉取SpringBoot源码.然鹅,在本地IDEA打开后,爆各种编译错误,各种问题.经过反复操作,现在总结一下SpringBoot源码环境搭建的实践,便于后期对于源码的学 ...

  2. zookeeper3.5.4源码环境搭建

    zookeeper3.5.4源码环境搭建 1. 准备工作 渠道 地址 网盘 zk源码下载地址 提取码:5555 注意:因为zookeeper是由ant来构建的,所以需要使用ant命令来转换成工程,然后 ...

  3. Android源码环境搭建(aosp Ubuntu 16.04)

    Android源码环境搭建(aosp Ubuntu 16.04) FrameWork入门课视频链接:https://edu.csdn.net/course/detail/30298 FrameWork ...

  4. Kafka源码环境搭建

    欢迎支持笔者新作:<深入理解Kafka:核心设计与实践原理>和<RabbitMQ实战指南>,同时欢迎关注笔者的微信公众号:朱小厮的博客. 欢迎跳转到本文的原文链接:https: ...

  5. datax源码环境搭建

    文章目录 datax源码环境搭建 写在前面 环境 下载源码并编译 错误1 错误2 运行 生产模式 debug模式 datax源码环境搭建 写在前面 DataX 是阿里巴巴集团内被广泛使用的离线数据同步 ...

  6. ZooKeeper源码阅读心得分享+源码基本结构+源码环境搭建

    首发CSDN:徐同学呀,原创不易,转载请注明源链接.我是徐同学,用心输出高质量文章,希望对你有所帮助. 一.心得分享 如何阅读ZooKeeper源码?从哪里开始阅读?最近把ZooKeeper源码看了个 ...

  7. win10环境下的spark2.4源码环境搭建

    spark2.4源码环境搭建 1.概述 2.版本信息及环境 3.基础环境准备 4.源码准备 5.IDEA设置 5.1 IDEA内maven插件设置与更新 5.2 IDEA内导入spark各个模块 6. ...

  8. kafka项目启动_Kafka 探险 源码环境搭建

    这个 Kafka 的专题,我会从系统整体架构,设计到代码落地.和大家一起杠源码,学技巧,涨知识.希望大家持续关注一起见证成长! 我相信:技术的道路,十年如一日!十年磨一剑! 前言 在阅读源码之前,首先 ...

  9. LAMMP源码环境搭建

    一.LAMMP环境简介 LAMMP是linux.Apache.Mysql.Memcahed.PHP的首字母缩写 LAMMP网络拓扑图(待补) 工作模式: apache响应回复用户html请求并转发ph ...

  10. Spring源码阅读 源码环境搭建(一)

    ring 源码阅读的搭建(一) 一 下载spring源码 进入官方网页:https://spring.io/projects/spring-framework 进入相关的github位置,下载zip包 ...

最新文章

  1. [毕业生的商业软件开发之路]C#类型样式
  2. 【转】python 和 cx_Oracle 的使用
  3. Spring系列(二):Bean注解用法介绍
  4. Callable接口-创建线程的第三种方法
  5. 网站关停就没事了?5100万账户文件被盗
  6. 17日直播预告丨Oracle 19c避雷经验分享
  7. 怎么在Java里辨别小数_求教java中如何判断一个数是不是小数,求详细代码及解释...
  8. python中两个文件如何互相传参_argparse模块如何在jupyter notebook中用于传参?
  9. rbac权限管理5张表_thinkphp框架下基于rbac的后台程序
  10. 在LaTeX中使用BibTeX时的一个问题及其解决:编译PDF不随bib文件更新
  11. 某烟草局绩效考核系统分析设计清单
  12. 信息系统分析与设计(第四版)期末复习提纲
  13. 【笔记】Loop曲面细分算法c++实现
  14. 深蓝学院-多传感器融合定位课程-第4章-点云地图构建及基于地图的定位
  15. vivox27微信无法连接服务器,vivo X27微信拍照模糊怎么办?简单一个操作轻松解决...
  16. 用iPhone开高达:日本推出可驾驭的真实重型机甲
  17. 红米5a android 版本,【红米5A安卓7.1.2线刷包】MIUI V9.5.3.0.NCKCNFA稳定版 精简线刷包...
  18. 【Maven】什么是Maven?Maven有什么用?
  19. Linux查看nginx配置文件
  20. DELLEMC S4048

热门文章

  1. 自动加权GCN算法实现反洗钱识别-有数据有代码
  2. zabbix2.0 监控华为Quidway S9306交换机实例[完整]
  3. 决策树,基尼系数,泰勒级数
  4. 如何使用南方CASS制作三维地形
  5. 友声电子秤手机app_友声TM-xA条码秤数据管理软件V2.53D
  6. 文件翻译改名,将名称从中文翻译成英文的方法
  7. 此时已莺飞草长,愿世间美好与你环环相扣
  8. 环环相扣的信用卡案情
  9. zookeeper安装步骤
  10. RichEdit读取rtf格式