1、什么是Dubbo
概述:Dubbo是阿里巴巴内部使用的分布式业务框架,2012年由阿里巴巴开源,由于Dubbo在阿里内部经过广泛的业务验证,在很短时间内,Dubbo就被许多互联网公司所采用,并产生了许多衍生版本,如网易,京东,新浪,当当等等。由于阿里策略变化,2014年10月Dubbo停止维护。随后部分互联网公司公开了自行维护的Dubbo版本,比较著名的如当当DubboX,新浪Motan等。经过三年的沉寂,在2017年9月,阿里宣布重启Dubbo项目,并决策在未来对开源进行长期持续的投入。随后Dubbo开始了密集的更新,并将停摆三年以来大量分支上的特性及缺陷修正快速整合。
基于rpc:
rpc远程过程调用协议;是JDK底层提出的协议,Dubbo只是对这个协议的实现的一个框架技术; rpc协议就是跨服务器,跨tomcat;
可以从一个项目调用另一个项目中的方法
2、作用
跨项目调用方法, 从一个项目中的Controller可以调用另一个项目中的service方法
3、同类型的技术有哪些
Dubbo:
DubboX
优点:传输效率快
缺点:Controller和Service两个项目必须都是Java语言实现
springCloud
webService技术
4、如何使用
①.服务层注解
service实现类上写@service注解
写此注解的时候,注意先包,选的是阿里dubbo下的包
②.Controlle注入
使用@refrence注解来进行注入
选择也是dubbo下的
③.pojo传输
如果Controller和service之间传输pojo实体类,
那么实体类必须实现Java的序列化接口
④. 序列化
网络传输,是通过插在电脑上的网线(双绞线)进行
网线当中传输入的是模拟信号,波浪形式的信号,有高电位和底电位 可以使用高底电位 代表 0 或 1
网线是插在电脑网卡上,网卡我们又称数模转换器 数字信号和模拟信息进行转换
网络传输是模拟信息
计算机处理时, 数字信号
转换成数字信号后, 进入操作系统, 再根据相应的端口号找到对应的服务处理
在Java中只要告诉它,实现序列化接口, JVM就会自动的把实现类转换成对应的信号进行传输
5、Dubbo调用流程
①.所有的服务都要在Zookeeper注册中心当中进入注册,每一个服务都有自己的配置文件,在配置文件当中配置好自己端口号和地址,然后把端口号和地址注册在zookeeper注册中心统一管理
②.Zookeeper注册中心 ,管理服务提供方服务器的ip和端口,并知道哪台机器启动了,哪台机器关闭了
③.服务调用方Controller项目询问ZooKeeper可以提供服务的IP和端口
④.Zookeeper返回可以使用的IP和端口号给Controller
⑤.Controller使用IP+端口+接口+方法调用,到指定的服务中调用对应的方法
⑥.服务返回对应的结果
示例图

下一篇文章:如何安装dubbo服务
来源:CSDN
作者:小老弟,要坚持住
链接:https://blog.csdn.net/qq_43060870/article/details/104356825