01[了解] Dubbo
什么是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调用流程..我们下期再见。
01[了解] Dubbo的更多相关文章
- 把本人基于Dubbo的毕业设计分享粗来~
这个毕业设计不是太让我满意,可能时间关系吧,但是现在工作了我也懒得没时间去完善了[目前也就有一个功能没完成,就是给产品经理送绿帽子的模块] 项目地址:GitHub 技术栈:Spring+SpringM ...
- 微服务开源生态报告 No.8
「微服务开源生态报告」,汇集各个开源项目近期的社区动态,帮助开发者们更高效的了解到各开源项目的最新进展. 社区动态包括,但不限于:版本发布.人员动态.项目动态和规划.培训和活动. 非常欢迎国内其他微服 ...
- 微服务开源生态报告 No.6
「微服务开源生态报告」,汇集各个开源项目近期的社区动态,帮助开发者们更高效的了解到各开源项目的最新进展. 社区动态包括,但不限于:版本发布.人员动态.项目动态和规划.培训和活动. 非常欢迎国内其他微服 ...
- 微服务开源生态报告 No.5
「微服务开源生态报告」,汇集各个开源项目近期的社区动态,帮助开发者们更高效的了解到各开源项目的最新进展. 社区动态包括,但不限于:版本发布.人员动态.项目动态和规划.培训和活动. 非常欢迎国内其他微服 ...
- dubbo源码分析01:SPI机制
一.什么是SPI SPI全称为Service Provider Interface,是一种服务发现机制,其本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件.这样可以在运行时,动态为 ...
- Dubbo源码解读:appendAnnotation [01]
import java.lang.reflect.Method; public class AppendAnnotation { /** * 获取某个Annotation实例的所有方法值(实际是Ann ...
- [资料分享]dubbo视频教程流行版
一.基础篇 第001节–课程介绍 第01节–使用Dubbo对传统工程进行服务化改造的思路介绍 第02节–使用Dubbo对传统工程进行服务化改造 第03节–ZooKeeper注册中心安装 第04节–使用 ...
- HSF和Dubbo有什么区别
一. 以下摘录自企业级分布式应用服务EDAS官网段落 RPC服务 提供对Dubbo和HSF两个RPC框架的支持.阿里巴巴第一代RPC框架Dubbo是国内第一款成熟的商用级RPC框架,已于2011年正式 ...
- nested exception is org.xml.sax.SAXParseException; lineNumber: 8; columnNumber: 56; cvc-complex-type.2.4.c通配符的匹配很全面, 但无法找到元素 'dubbo:application' 的声明
严重: Exception sending context initialized event to listener instance of class org.springframework.we ...
随机推荐
- Rocket - diplomacy - BaseNode
https://mp.weixin.qq.com/s/eOgNLi_MJ8HJOpepGaaW8Q 简单介绍BaseNode的实现. 1. You cannot create a n ...
- 高性能可扩展mysql 笔记(三)Hash分区、RANGE分区、LIST分区
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 一.MySQL分区表操作 1.定义:数据库表分区是数据库基本设计规范之一,分区表在物理上表现为多个文件, ...
- Java实现 LeetCode 526 优美的排列(DFS)
526. 优美的排列 假设有从 1 到 N 的 N 个整数,如果从这 N 个数字中成功构造出一个数组,使得数组的第 i 位 (1 <= i <= N) 满足如下两个条件中的一个,我们就称这 ...
- Java实现 LeetCode 412 Fizz Buzz
412. Fizz Buzz 写一个程序,输出从 1 到 n 数字的字符串表示. 如果 n 是3的倍数,输出"Fizz": 如果 n 是5的倍数,输出"Buzz" ...
- Java实现蓝桥杯模拟元音单词的验证
问题描述 小明对类似于 hello 这种单词非常感兴趣,这种单词可以正好分为四段,第一段由一个或多个辅音字母组成,第二段由一个或多个元音字母组成,第三段由一个或多个辅音字母组成,第四段由一个或多个元音 ...
- Android中如何使用Listview
第一步 首先在xml文件中声明一个List View控件,并且标明id (这一步其实不用说,怕自学Android的小白不懂,就好比当初的我,哈哈) <?xml version="1.0 ...
- Java GUI 键盘事件
import java.awt.FlowLayout; import java.awt.Frame; import java.awt.TextField; import java.awt.event. ...
- Java实现 洛谷 P1980 计数问题
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = ...
- java实现哈密顿回路问题
1 问题描述 什么是哈密顿回路? 引用自百度百科: 哈密顿图(哈密尔顿图)(英语:Hamiltonian path,或Traceable path)是一个无向图,由天文学家哈密顿提出,由指定的起点前往 ...
- Linux内核配置编译及基本调试方法
一.Linux内核配置编译 1. 交叉编译设置:make ARCH=arm CROSS_COMPILE=arm-linux- 注:也可以直接修改顶层Makefile ARCH ?= arm CROSS ...