说说Dubbo的整体架构及分层?

简介: 说说Dubbo的整体架构及分层?

一、五个角色


注册中心registry服务注册与发现

服务提供者provider暴露服务

服务消费者consumer调用远程服务

监控中心monitor统计服务的调用次数和调用时间

容器container服务允许容器


二、调用流程


1: container容器负责启动加载、运行provider

2: provider在启动时, 向regisitry中心注册自 己提供的服务

3: consumer在启动时,向regisitry中心订阅自己所需的服务

4: regisitry返回服务提供者列表给consumer,如果有变更, registry将基于长连接推送变更数据给consumer

5: consumer调用provider服务,基于负载均衡算法进行调用

6: consumer调用provider的统计,基于短链接定时每分钟一次统计到monitor


三、分层


接口服务层( Service) :面向开发者,业务代码、接口、实现等

配置层( Config) :对外配置接口,以ServiceConfig和ReferenceConfig为中心

服务代理层( Proxy) :对生产者和消费者、dubbo都会产生-个代理类封装调用细节, 业务层对远程调用无感

服务注册层( Registry) : 封装服务地址的注册和发现,以服务URL为中心

路由层( Cluster) :封装多个提供者的路由和负载均衡,并桥接注册中心

监控层( Monitor) : RPC 调用次数和调用时间监控

远程调用层( Protocal) :封装RPC调用

信息交换层( Exchange) :封装请求响应模式,同步转异步

网络传输层( Transport) :抽象mina 和netty 为统一接口,统- -网络传输接口

数据序列化层( Serialize) : 数据传输的序列化和反序列化

目录
相关文章
|
6月前
|
Dubbo Cloud Native 网络协议
【Dubbo3技术专题】「服务架构体系」第一章之Dubbo3新特性要点之RPC协议分析介绍
【Dubbo3技术专题】「服务架构体系」第一章之Dubbo3新特性要点之RPC协议分析介绍
91 1
|
15天前
|
人工智能 前端开发 JavaScript
前端架构思考 :专注于多框架的并存可能并不是唯一的方向 — 探讨大模型时代前端的分层式微前端架构
随着前端技术的发展,微前端架构成为应对复杂大型应用的流行方案,允许多个团队使用不同技术栈并将其模块化集成。然而,这种设计在高交互性需求的应用中存在局限,如音视频处理、AI集成等。本文探讨了传统微前端架构的不足,并提出了一种新的分层式微前端架构,通过展示层与业务层的分离及基于功能的横向拆分,以更好地适应现代前端需求。
|
2月前
|
安全 应用服务中间件 API
微服务分布式系统架构之zookeeper与dubbo-2
微服务分布式系统架构之zookeeper与dubbo-2
|
30天前
|
JSON 前端开发 Java
Spring Boot框架中的响应与分层解耦架构
在Spring Boot框架中,响应与分层解耦架构是两个核心概念,它们共同促进了应用程序的高效性、可维护性和可扩展性。
45 3
|
1月前
|
存储 前端开发 API
DDD领域驱动设计实战-分层架构
DDD分层架构通过明确各层职责及交互规则,有效降低了层间依赖。其基本原则是每层仅与下方层耦合,分为严格和松散两种形式。架构演进包括传统四层架构与改良版四层架构,后者采用依赖反转设计原则优化基础设施层位置。各层职责分明:用户接口层处理显示与请求;应用层负责服务编排与组合;领域层实现业务逻辑;基础层提供技术基础服务。通过合理设计聚合与依赖关系,DDD支持微服务架构灵活演进,提升系统适应性和可维护性。
|
3月前
|
存储 消息中间件 JSON
|
4月前
|
监控 Kubernetes 安全
Istio整体架构解析
【7月更文挑战第17天】Istio整体架构分为数据平面(Data Plane)和控制平面(Control Plane)两部分
|
4月前
|
运维 Java Docker
业务系统架构实践问题之在某些情况下,将能力代码和业务逻辑严格分层可能是一个挑战问题如何解决
业务系统架构实践问题之在某些情况下,将能力代码和业务逻辑严格分层可能是一个挑战问题如何解决
|
4月前
|
存储 搜索推荐 API
业务系统架构实践问题之分层架构中的四层定位是什么
业务系统架构实践问题之分层架构中的四层定位是什么
111 0
|
4月前
|
缓存 项目管理
项目管理定义问题之DDD架构的分层架构中基础层作用是什么
项目管理定义问题之DDD架构的分层架构中基础层作用是什么