01[了解] Dubbo
2020-05-18 本文已影响0人
杨不易呀
什么是Dubbo?
- 概述
-
Dubbo是阿里巴巴内部使用的分布式业务框架,2012年由阿里巴巴开源。
-
由于Dubbo在阿里内部经过广泛的业务验证,在很短时间内,Dubbo就被许多互联网公司所采用,并产生了许多衍生版本,如网易,京东,新浪,当当等等。
-
由于阿里策略变化,2014年10月Dubbo停止维护。随后部分互联网公司公开了自行维护的Dubbo版本,比较著名的如当当DubboX,新浪Motan等。
-
经过三年的沉寂,在2017年9月,阿里宣布重启Dubbo项目,并决策在未来对开源进行长期持续的投入。随后Dubbo开始了密集的更新,并将停摆三年以来大量分支上的特性及缺陷修正快速整合。
-
2018.2月,阿里将Dubbo捐献给Apache基金会,Dubbo成为Apache孵化器项目。
-
- 基于rpc
- rpc远程过程调用协议
- 是JDK底层提出的协议,Dubbo只是对这个协议的实现的一个框架技术
- rpc协议就是跨服务器,跨tomcat 可以从一个项目调用另一个项目中的方法
作用
- 跨项目调用方法
- 从一个项目中的Controller可以调用另一个项目中的service方法
同类型的技术有哪些
1. Dubbo
2. DubboX
2.1 优点
传输效率快
2.2 缺点
Controller和Service两个项目必须都是Java语言实现
3. springCloud
4. webService技术
4.1 cfx
4.2 使用的soap协议,传输的是xml数据
如何使用
1.服务层注解
service实现类上写@service注解
写此注解的时候,注意先包,选的是阿里dubbo下的包
2.Controlle注入
使用@refrence注解来进行注入
选择也是dubbo下的
3.pojo传输
如果Controller和service之间传输pojo实体类,
那么实体类必须实现Java的序列化接口
序列化
网络传输,是通过插在电脑上的网线(双绞线)进行
网线当中传输入的是模拟信号,波浪形式的信号,有高电位和底电位 可以使用高底电位 代表 0 或 1
网线是插在电脑网卡上,网卡我们又称数模转换器 数字信号和模拟信息进行转换
网络传输是模拟信息
计算机处理时, 数字信号
转换成数字信号后, 进入操作系统, 再根据相应的端口号找到对应的服务处理
在Java中只要告诉它,实现序列化接口, JVM就会自动的把实现类转换成对应的信号进行传输
下章节Dubbo调用流程..我们下期再见。