环境搭建的步骤有哪些html
依赖外部的环境git
使用的开发工具github
源码的拉取算法
结构大体介绍apache
1 依赖的外部环境性能优化
安装JDK架构
安装Git并发
安装maven负载均衡
这边咱们就不介绍怎么安装这些外部环境了,你们自行从安装这些外部环境哈框架
2 使用的外部工具
编辑器使用 IntelliJ IDEA (简单好用,快捷键丰富)
GitHub Desktop GitHub的客户端软件,用起来真顺手
3 源码的拉取
源码的话咱们上GitHub 上面直接拉取dubbo的源码便可, Dubbo 而后咱们 Fork出一个属于咱们本身的仓库,以后咱们就能够在咱们GitHub的仓库中看到这个项目了。而后咱们将这个项目down到本地进行调试
具体Git操做不详细介绍,下面贴出几个比较好的供你们参考
https://blog.csdn.net/qq_32040767/article/details/77096761
https://blog.csdn.net/menggudaoke/article/details/77744541
https://juejin.im/entry/5a5f3b286fb9a01c9064e83b
https://www.cnblogs.com/MrJun/p/3351478.html
这里咱们为何使用Fork 而不是Star,这是由于star的项目你不是Pull Request 到源项目的,而Fork 是能够的。想一想一下要是你在看源码的过程当中发现了bug。而后提交给他们并审核这是一件多酷的事情
4 Dubbo的大体介绍
下面的这个 Dubbo 官网上最为经典的介绍,一张图就将整个Dubbo 过程大体的介绍的差很少。
什么是Dubbo?
一个分布式服务治理框架
Dubbo的做用是什么?
做用是解决下面的问题
单一应用架构
垂直应用架构
分布式服务架构
流动计算架构
节点角色说明
调用关系说明
服务容器负责启动,加载,运行服务提供者。
服务容器负责启动,加载,运行服务提供者。
服务提供者在启动时,向注册中心注册本身提供的服务。
服务消费者在启动时,向注册中心订阅本身所需的服务。
注册中心返回服务提供者地址列表给消费者,若是有变动,注册中心将基于长链接推送变动数据给消费者。
服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,若是调用失败,再选另外一台调用。
服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心。
详细介绍下 Registry Provider Consumer
由于这三者是整个Dubbo 调用过程的链路核心
talk is cheap show me the code
光说不行,我们经过看下项目中的源码来看下dubbo整个结构
dubbo提供了 一个demo项目供你们测试调试 整个demo已经在你down的dubbo的项目中了
打开咱们的dubbo项目,咱们会看到这样的一个子项目
这里就是那个demo子项目 就是咱们能够直接运行测试的项目
将整个测试项目展开,咱们会看见这几个文件
咱们先进入consumer项目中的 Consumer类中,运行这个类。在这里是一个main函数,咱们直接运行就ok了
以后咱们再启动Provider 类。这样的话,咱们就启动了一对消费者和生产类。这样的话,最简单的dubbo程序就 启动了。
在此我向你们推荐一个架构学习交流群。交流学习群号:821169538
里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析
高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构等这些
成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多。
下面咱们根据这个最简单的类来分析下
消费者的测试demo,循环调用方法
咱们经过配置文件xml来进行服务的发现和启用,还有对注册中心的配置
下面介绍下服务的提供者Provider
出处:https://www.tuicool.com