Day172.dubbo原理 -Dubbo
Dubbo
Dubbo原理
1、RPC原理
紫色的序号对于使用dubbo的prc框架是透明的是一个黑盒
2、netty通信原理
Netty是一个异步事件驱动的网络应用程序框架, 用于快速开发可维护的高性能协议服务器和客户端。它极大地简化并简化了TCP和UDP套接字服务器等网络编程。
BIO:(Blocking IO):
每一个Socket都开一线程处理,其他没有获取到cpu资源的线程就会被阻塞等待
NIO (Non-Blocking IO):
通过Selector多路复用器,来判断这通道的状态,并是否给他线程让他执行
Selector 一般称 为选择器 ,也可以翻译为 多路复用器,
Connect(连接就绪)、Accept(接受就绪)、Read(读就绪)、Write(写就绪)
Netty基本原理:
先对需要监视的端口进行绑定
然后自身初始化,与注册到前面的Selector多路复用器,经过状态判断获取到线程,然后注册到worker里面的Selector多路复用器,进行安排接下来的工作安排
boss让准备好的进来(招人干活),worker(去干活的)
3、dubbo原理
1、dubbo原理 -框架设计
config 配置层:对外配置接口,以 ServiceConfig, ReferenceConfig 为中心,可以直接初始化配置类,也可以通过 spring 解析配置生成配置类
proxy 服务代理层:服务接口透明代理,生成服务的客户端 Stub 和服务器端 Skeleton, 以 ServiceProxy 为中心,扩展接口为 ProxyFactory
registry 注册中心层:封装服务地址的注册与发现,以服务 URL 为中心,扩展接口为 RegistryFactory, Registry, RegistryService
cluster 路由层:封装多个提供者的路由及负载均衡,并桥接注册中心,以 Invoker 为中心,扩展接口为 Cluster, Directory, Router, LoadBalance
monitor 监控层:RPC 调用次数和调用时间监控,以 Statistics 为中心,扩展接口为 MonitorFactory, Monitor, MonitorService
protocol 远程调用层:封装 RPC 调用,以 Invocation, Result 为中心,扩展接口为 Protocol, Invoker, Exporter
exchange 信息交换层:封装请求响应模式,同步转异步,以 Request, Response 为中心,扩展接口为 Exchanger, ExchangeChannel, ExchangeClient, ExchangeServer
transport 网络传输层:抽象 mina 和 netty 为统一接口,以 Message 为中心,扩展接口为 Channel, Transporter, Client, Server, Codec
serialize 数据序列化层:可复用的一些工具,扩展接口为 Serialization, ObjectInput, ObjectOutput, ThreadPool
2、dubbo原理 -启动解析、加载配置信息
3、dubbo原理 -服务暴露
4、dubbo原理 -服务引用
5、dubbo原理 -服务调用
感谢尚硅谷,感谢雷神!!!
Day172.dubbo原理 -Dubbo相关推荐
- Dubbo原理何源码解析之服务暴露
2019独角兽企业重金招聘Python工程师标准>>> 一.框架设计 在官方<Dubbo 用户指南>架构部分,给出了服务调用的整体架构和流程: 另外,在官方<Dub ...
- Dubbo原理和源码解析之服务引用
github新增仓库 "dubbo-read"(点此查看),集合所有<Dubbo原理和源码解析>系列文章,后续将继续补充该系列,同时将针对Dubbo所做的功能扩展也进行 ...
- Dubbo面试 - dubbo的工作原理
Dubbo面试 - dubbo的工作原理 面试题 说一下的 dubbo 的工作原理?注册中心挂了可以继续通信吗?说说一次 rpc 请求的流程? 面试官心理分析 MQ.ES.Redis.Dubbo,上来 ...
- dubbo原理_dubbo的底层原理
一.Duboo基本概念解释 Dubbo是一种分布式服务框架. Webservice也是一种服务框架,但是webservice并不是分布式的服务框架,他需要结合F5实现负载均衡.因此,dubbo除了可以 ...
- dubbo原理_Dubbo原理浅析
Apache Dubbo™ 是一款微服务框架(Microservices Framework),它提供高性能 RPC 通信.服务发现.流量管理等服务治理能力,提供构建大规模微服务集群所需的全套解决方案 ...
- Dubbo原理简单分析
1.Dubbo原理分析 alibaba有好几个分布式框架,主要有:进行远程调用(类似于RMI的这种远程调用)的(dubbo.hsf),jms消息服务(napoli.notify),KV数据库(tair ...
- Dubbo系列之Dubbo原理简介
文章目录 一.分布式基本知识 1.1) 架构演变 1.2).分布式基本概念 二.RPC简介 2.1) RPC概念 2.2) RPC核心模块 三.Dubbo原理简介 3.1) Dubbo简介 3.2) ...
- Dubbo原理与实践(2)
Dubbo是阿里开源的的rpc框架,现已成为Apache的顶级项目.Dubbo在国内的大公司中使用较多,具有良好的服务治理能力. 在阿里停止维护一段时间后,2017年又重新开始维护,2.x的最新版本为 ...
- Dubbo原理和面试问题
今天来说一说dubbo的原理,首先我们要知道dubbo到底是什么,都能提供些什么服务? 一.dubbo是什么? dubbo是⼀个分布式服务框架,提供⾼性能和透明化的RPC远程服务调⽤⽅案,以及SOA服 ...
最新文章
- 浅谈 JSON.stringify 方法
- 【IT笔试面试题整理】字符串转数组+数组转字符串
- Thymeleaf th:include、th:replace使用
- HTTP 协议(详解)
- C# Winform 窗体美化(一、IrisSkin 换肤库)
- 加载本地json文件,并利用批处理调用Chrome显示html
- 秋季促销海报素材手机端模板,让打折季像诗一样
- pylon 内存泄露的问题
- Python 的输出矩阵的一些常用设置
- kettle 提交数据量_kettle大数据量读写mysql性能优化
- 桌面计算机图标双击打不开了,双击打不开图标怎么办 双击打不开图标解决方法【详解】...
- STL ++iter与iter++区别
- python documents in chinese_基于 Python 的简单自然语言处理实践
- 基于yolov5-6.0版本的PCB板缺陷检测(Python/C++部署)
- cpuz测试分数天梯图_PC电脑桌面CPU天梯图2020 单路CPU性能排名
- linux命令tcp和tt,Linux中tcpdump命令起什么作用呢?
- MATLAB 函数大全
- Mac上挂载移动硬盘出现Read-only file system问题
- table如何正确的隐藏一列
- 用论文写作平台Overleaf写中文论文
热门文章
- SPH和Lagrange网格混合超高速碰撞仿真——基于Ls-dyna和Ls-prepost
- 你有一份超详细的深度学习装机指南等待认领!(下篇)
- Unity向量按照某一点进行旋转
- arcgis xml 下载 切片_生成切片缓存切片方案
- 老爸评测上线“老爸抽检”,携消费者深度参与质检全过程
- NFT 的基础知识:区块链上的数字艺术和收藏品
- 2021年饶州中学高考成绩查询,江西鄱阳县饶州中学高三男生看女生洗澡被追至坠亡?(图)...
- 只有学习才能走得更远
- php jcrop教程,PHP+Jcrop+artDialog头像上传
- 小程序重构第一期丨不小心删库了。。。