dubbo 版本: 2.7.X, 截至 2021.5 月最新的版本.
一, 学习目录
1.1, 背景
单一 / 垂直应用架构已经满足不了互联网应用的规模, 因为痛所以需要找到解决方案. dubbo 的官方背景描述
1.2, 收益 & 目标 & 优势 & 需求
dubbo 能解决什么问题? 或者定位要解决什么问题呢?
Dubbo 需要解决的是,
(1) 如何管理繁多的依赖关系?
(2) 如何进行负载均衡和故障转移 (failOver)?
(3) 如何进行服务治理, 请求量, 响应时间和容量水位等?
我们回忆下一个基本的 RPC 框架组成结构需要的是:
基础:
网络通信 (信息传递的方式)
序列化框架 (编码解码)
服务 & 消费的注册与发现 (寻址服务)
动态代理 (客户端代理模式透明服务实现)
好用:
业务集成 (配置或者 Spring 等主流框架集成)
成熟: 服务治理
可观测性 (监控, 调用量, 响应时间 (网络带宽, IO), 容量规划 (CPU, 内存, 磁盘))
高并发 (四高一安全)
具体可以看: RPC 框架的核心组件
1.3, 名词解释
RPC : 在分布式系统中, 计算机程序使一个过程在不同的地址空间中执行, 通常是共享网络上的另外一台计算机, 而这个地址空间的编码就好像是一个普通的本地调用, 没有程序员去远程交互显示的编码. 面向对象编程范式中, rpc 是由远程方法调用 RMI 标识.
- com.alibaba.dubbo.container.spring.SpringContainer
- .
- dubbo-container-log4j
- com.alibaba.dubbo.container.log4j.Log4jContainer
- .
- dubbo-container-logback
- com.alibaba.dubbo.container.logback.LogbackContainer
- .
来源: https://www.qcloud.com/developer/article/1828494