dubbo是啥?
Apache Dubbo 是一款高性能、轻量级的开源 Java 服务框架
dubbo有什么用?
面向接口代理的高性能 RPC 调用;
服务自动注册与发现;
智能负载均衡策略;
高度可扩展能力;
运行期流量调度;
可视化的服务治理与运维;
具体在游戏中,便是实现远程方法的本地调用,让远程调用和本地方法一样丝滑。
dubbo结构是什么样的?
来个官网图

其实看流程图没用,不如看我dubbo系列文章,服务暴露、服务引用整个流程,给你整的明明白白。
dubbo的一生
2011/10/27: 刚出生,阿里巴巴巴宣布 Dubbo 开源。
2012/10/23: 差点夭折,发布最后一个版本 2.5.3 并停止维护更新。
2017/07/31: 起死回生,官方宣布开启重新更新,并会得到重点维护,参考:Dubbo 宣布重新开始维护。
2017/09/07: 发布起死回生的第一个版本:dubbo-2.5.4。
2018/01/08:
1、Dubbo 团队透露 Dubbo 3.0 宣布正式开工
2、发布了 dubbo-2.6.0 版本,主要合并了由当当网开源的 dubbox 项目分支。PS:dubbo停止维护期间,当当网基于 dubbo 开源了dubbox。
2018/01/22: Dubbo Spring Boot 版正式发布:dubbo-spring-boot-starter v1.0.0 公测版。
2018/02/09: Dubbo 通过投票正式进入 Apache 基金会孵化器,更新了 Apache 官方域名,也不再仅限于 Java 语言。
2019/05/20: Apache 软件基金会宣布 Dubbo 正式毕业,成为 Apache 的顶级项目。
2021/06/20: Dubbo3.0.0来了
所以Dubbo3.0.0的特性是啥啊
应用级服务发现机制;
下一代 RPC 协议:Triple;Triple 协议是 Dubbo3 的主力协议,完整兼容 gRPC over HTTP/2,并在协议层面扩展了负载均衡和流量控制相关机制。
全新的路由规则;
显著提升性能;
Kubernetes 服务集成;
注意:Dubbo 核心不再提供第三方 SDK 扩展,需要通过 dubbo-spi-extensions 项目来支持。
目前支持的扩展有:
Zookeeper 作为注册中心、元数据报告、配置中心;
Nacos 作为注册中心、元数据报告、配置中心;
Kubernetes 作为注册中心;
Redis 作为元数据报告;
Apollo 作为配置中心;
Hessian2 和 jdk 作为默认序列化器;
Triple 协议支持 Protobuf;
到底要怎么学dubbo?
很多人不知道怎么入手学dubbo,只是听过而已,那么该怎么学呢?
首先肯定是看官网啦:
https://dubbo.apache.org/zh/
官网
其次是看源码啦:
https://github.com/apache/dubbo
dubbo源码
如果想看代码注释的话可以看我备注的版本:
https://github.com/wiatingpub/dubbo
小饭饭整理版的源码
其次是关注我,我前阵子在公司写了一个服务化中间件,参考的就是dubbo,最近打算在写一个dubbo系列,目前已经写了4万字:


想学dubbo的看过来,2万字整理服务引入流程《一起玩dubbo系列第三篇》

一起玩dubbo,万字长文揭秘服务暴露

一起玩dubbo,先入个门
服务消费方如何远程调用服务提供方,进度百分之八十
SPI,正在写
dubbo中的AOP机制,正在写
服务治理,正在写
不过都是2.6x系列,3.0的版本后续会写个改动版本的系列出来,有兴趣持续关注。
学完dubbo,可以做一个rpc框架吗?
可以的,看dubbo源码参考相关模型即可,像我们公司的rpc框架,我们主要参考了流程和模型设计,比如invoker模型、cluster、router、provider、consumer、register、proxy层、transport、loadbalance等等,后续我这边会带大家写个rpc,有兴趣持续关注我。
所以dubbo怎么拼?

来,张嘴:达波
- 往期文章推荐 -

想学dubbo的看过来,2万字整理服务引入流程《一起玩dubbo系列第三篇》

一起玩dubbo,万字长文揭秘服务暴露

一起玩dubbo,先入个门

高级开发竟然被构造器循环依赖难住了?

肥肥的主管和帅气的小饭饭讨论了下ForkJoinPool

聊聊Autowired的常考面试题

面试官告诉你什么是JMM和常考面试题

去年面了多个候选人,看看我挖的坑还有他们应该要补的Java基础(二)
想学dubbo的关注我
某游戏大厂高级开发,专门和主管抬杠的小组长。想学dubbo的可以微信搜一搜「 稀饭下雪 」第一时间阅读Caffeine、dubbo等优秀框架的源码分析和教材讲解以及实际应用,有需要java面试资料的也可以关注一波,回复java资源获取我整理的专项资料。




