01[了解] Dubbo

什么是Dubbo?

  • 概述

    1. Dubbo是阿里巴巴内部使用的分布式业务框架,2012年由阿里巴巴开源。

    2. 由于Dubbo在阿里内部经过广泛的业务验证,在很短时间内,Dubbo就被许多互联网公司所采用,并产生了许多衍生版本,如网易,京东,新浪,当当等等。

    3. 由于阿里策略变化,2014年10月Dubbo停止维护。随后部分互联网公司公开了自行维护的Dubbo版本,比较著名的如当当DubboX,新浪Motan等。

    4. 经过三年的沉寂,在2017年9月,阿里宣布重启Dubbo项目,并决策在未来对开源进行长期持续的投入。随后Dubbo开始了密集的更新,并将停摆三年以来大量分支上的特性及缺陷修正快速整合。

    5. 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调用流程..我们下期再见。

原文地址:https://www.cnblogs.com/Yangbuyi/p/13153381.html