dubbo源码分析1(搭建环境)
2021/11/20 22:39:57
本文主要是介绍dubbo源码分析1(搭建环境),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
好久没有写博客了, 一方面是最近工作太忙了,还有就是因为在研究dubbo源码相关的,感觉没有怎么研究懂,我擦(╯—﹏—)╯(┷━━━┷
由于以前是使用springboot开发的,很简单,然后今年在这个新的公司使用的是dubbo框架,虽然对于我精通使用crud没有任何影响╮(╯_╰)╭,但是就是觉得不弄懂其中的原理就没有安全感
其实暗地里也偷偷的学习好久的dubbo了,大概的原理也懂了一丢丢,暂时没有深入,现在决定一遍写写博客,顺便深入一下其中源码,记录一下学习过程吧!
1.拉取源码
dubbo开源的,已经被阿里丢给apache维护了,所以我们直接去gitee 中进行下载,版本来个2.7.5吧,也可以根据自己情况自行下载其他版本的
然后我们可以使用idea或者eclipse打开,我这里使用idea,需要慢慢等着下载依赖,走,先打一把王者吧( ̄▽ ̄)ノ
2.注册中心
虽然说注册中心有很多种,比如Eureka,console,nacos,redis,zookeeper等等,但是dubbo注册中心一般就是使用zookeeper吧......
而且使用zookeeper有一些好处,后面肯定会好好的学习一波zookeeper,这个知识点也有很多,暂时先不管这么多,先把demo跑起来再说๑乛◡乛๑
下载zookeeper的方法应该不用多说,就是去下载一个zookeeper安装包,修改配置文件, 然后启动,可以参考这个老哥的博客
上图所示,看起来注册中心更像是一个缓存的作用吧!
当然,提供者和消费者可能都有很多个,其实上面这种架构也适用于springcloud,只不过如果是springcloud的话,第3个步骤走的就是http请求了
其实我觉得就是dubbo和springcloud的最大区别,在远程调用的时候,一个是走tcp调用(可以自己定义协议),一个是走http调用,有兴趣的可以看看网络五层协议,而且http请求会自带一些请求头,响应头,但是我们根本用不上这个,会消耗传输性能;
这就是为什么会有人说dubbo的效率会比springcloud高一点;
3.启动demo
瞎扯了一通,我们启动好了zookeeper,然后我们启动服务提供者(我记得我启动启动这个服务提供者的时候会报程序包org.apache.dubbo.rpc.protocol.rest.support不存在的错误,我们只需要把ContentType这个类复制到对应的org.apache.dubbo.config.bootstrap.rest包下就行了)
启动服务消费者
最后我们就能看到控制台的结果了,可以看到调用成功
到这里我们就把demo给跑起来了,先不要去纠结源码里怎么又这么多模块,有兴趣的可以自己先看看,了解一下
后面我们慢慢的分析其中的运行原理吧!
这篇关于dubbo源码分析1(搭建环境)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-14后台交互资料入门指南
- 2024-11-14如何轻松创建项目环境:新手入门教程
- 2024-11-14如何抽离公共代码:初级开发者指南
- 2024-11-14Python编程入门指南
- 2024-11-14Python编程入门:如何获取参数
- 2024-11-14JWT 用户校验:简单教程与实践
- 2024-11-14Pre-commit 自动化测试入门指南
- 2024-11-14Python编程基础
- 2024-11-14Server Action入门教程:轻松掌握服务器操作
- 2024-11-14Server Component入门教程:轻松搭建服务器组件