架构演变

垂直应用架构MVC

分布式服务架构RPC

  • 页面与业务的分离(页面经常发生改变, 设计模式的体现)
  • 页面所在的服务器和业务所在的服务器可能不在同一台服务器上, 此时需要在服务与服务之间的调用. 不同服务器之间的调用成为远程过程调用RPC.

客户端A->客户端A的邮局->客户端B的邮局->客户端B

影响RPC框架的效率

  • 建立连接的速度
  • 序列化和反序列化的速度

RPC: 由A服务器中调用B服务器中的一段功能

灰度发布: 新服务逐步替代旧服务的过程

流动计算架构

Dubbo原理

标签解析

每一个标签对应一个实体类,例如 service 标签对应 ServiceBean,consumer 标签对应 ConsumerConfig

DubboNamespaceHandler 命名空间中创建每一个预定义好的 DubboBeanDefinitionParser

通过标签解析器来解析对应的标签,即 BeanDefinitionParser

服务暴露流程

ServiceBean中的doExportUrl()

@DubboService 注解对应 service 标签,标签解析器和注解解析器本质上是一回事

通过一张表来进行管理,

服务引用流程

@DubboReference 注解对应 reference 标签,而 reference 标签中含有各种属性或子标签,因此 reference 也对应这一个实体类,即 ReferenceBean

refer() 方法

服务调用流程


   转载规则


《》 熊水斌 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
Nginx安装nginx 下载nginx安装包, 上传到linux系统中并解压 安装必要的编译工具等 #安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c++ libtool ope
2022-11-11
下一篇 
VMware 设置 NAT 模式 最小化安装(这会很多软件需要手动安装) 静态 IP 地址配置 主机名 hostname 配置 静态 IP 地址和主机名 hostname 可以在安装过程中直接通过图形化界面进行配置。 假如 IPv4 地
2022-11-11
  目录