一、Dubbo 简介与架构

一、Dubbo 简介与架构

1.1 应用架构演进过程

  • 单体应用:JEE、MVC
  • 分布式应用:SOA、微服务化
    1.2 Dubbo 简介
  • 一种分布式 RPC 框架,对专业知识(序列化/反序列化、网络、多线程、设计模式、性能优化等)进行了更高层的抽象和封装,提供开箱即用的特性。核心设计原则:微内核+插件体系
  • Dubbo 架构'
    *
      • Provider启动时会向注册中心把自己的元数据注册上去(比如服务IP和端口等),Consumer在启动时从注册中心订阅(第一次订阅会拉取全量数据)服务提供方的元数据,注册中心中发生数据变更会推送给订阅的Consumero在获取服务元数据后,Consumer可以发起RPC调用,在RPC调用前后会向监控中心上报统计信息(比如并发数和调用的接口)。
  • Dubbo 特性
    • 面向接口代理的高性能RPC调用
    • 服务自动注册与发现
    • 运行期流量调度
    • 智能负载均衡
    • 高度可扩展能力
    • 可视化的服务治理与运维
  • 不同架构区别
    • 单一应用架构:当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本
    • 垂直应用架构:将应用拆成互不相干的几个应用
      • 分布式服务架构
      • 流动计算架构
        1.3 总体大图
  • Dubbo 总体分层:业务层(Biz)、RPC层、Remote层
  • Dubbo 核心组件
    • 首先,服务器端(服务提供者)在框架启动时,会初始化服务实例,通过Proxy组件调用具体协议(Protocol ),把服务端要暴露的接口封装成Invoker (真实类型是AbstractProxylnvoker),然后转换成Exporter,这个时候框架会打开服务端口等并记录服务实例到内存中,最后通过Registry把服务元数据注册到注册中心
      h2
相关推荐
喵叔哟1 小时前
24. 【.NET 8 实战--孢子记账--从单体到微服务】--记账模块--预算扣除、退回、补充
微服务·架构·.net
言之。2 小时前
【微服务】面试题 6、分布式事务
分布式·微服务·架构
绝无仅有12 小时前
电商智能客服系统体验设计——以商家客服工作台为例
面试·程序员·架构
飞的肖13 小时前
微服务中的日志管理中间件的使用和管理
微服务·中间件·架构
昵称难产中16 小时前
浅谈云计算04 | 云基础设施机制
计算机网络·安全·云原生·架构·云计算
XianxinMao16 小时前
深度神经网络的校准问题研究:从架构差异到温度缩放优化
人工智能·架构·dnn
XDU小迷弟1 天前
第5天:APP应用&微信小程序&原生态开发&H5+Vue技术&封装打包&反编译抓包点
vue.js·web安全·微信小程序·小程序·架构
艾格北峰1 天前
汽车基础软件AutoSAR自学攻略(四)-AutoSAR CP分层架构(3) (万字长文-配21张彩图)
arm开发·单片机·嵌入式硬件·架构·汽车·科普
艾格北峰1 天前
汽车基础软件AutoSAR自学攻略(三)-AutoSAR CP分层架构(2)
单片机·嵌入式硬件·架构·汽车·科普