Dubbo
Davids_
原来人生无常,心安便是归处。
展开
-
Davids原理探究:Dubbo服务消费原理
文章目录Dubbo服务消费原理概述服务消费过程Dubbo服务消费原理关注可以查看更多粉丝专享blog~概述前面已经讲过Dubbo服务暴露的原理了(传送门),今天分析一下Dubbo服务消费原理,相比于服务暴露原理,服务消费就有点像把暴露原理倒过来,可以看一下消费原理图。跟服务暴露的流程很相似,只是服务暴露的核心类是ServiceConfig,服务消费的核心类是ReferenceConfig,从名字上也可以看出来。服务暴露流程是ServiceConfig --> ProxyFactory --&原创 2020-06-24 22:48:01 · 2461 阅读 · 0 评论 -
Davids原理探究:Dubbo优雅停机原理
Dubbo优雅停机原理解析关注可以查看更多粉丝专享blog~收到kill -9进程退出信号,Spring容器会触发容器销毁事件。provider端会取消注册服务元数据信息。consumer端会收到最新的地址列表(不包含准备停机的地址)。Dubbo协议会发送readonly事件报文通知consumer服务不可用。服务端等待已经执行的任务结束并拒绝新任务执行。最后provider与consumer断开TCP连接。注册中心已经通知了最新服务列表,provider还要发送readonly报文的原创 2020-06-24 22:45:18 · 2061 阅读 · 0 评论 -
Davids原理探究:Dubbo配置解析原理
文章目录Dubbo配置解析原理配置解析原理基于XML配置解析原理schema模块说明基于注解配置解析原理@EnableDubboServiceAnnotationBeanPostProcessor的作用ReferenceAnnotationBeanPostProcessor的作用Dubbo配置解析原理关注可以查看更多粉丝专享blog~上次本地编译的最新的Dubbo 2.7.8,跟着书看源码是基于2.6.5,从2.7.0版本开始dubbo的groupId已经变了。这里查看2.6.5的源码有两种方案【原创 2020-06-24 22:29:04 · 2049 阅读 · 0 评论 -
Davids原理探究:Dubbo负载均衡实现原理
Dubbo负载均衡实现原理RandomRobin 随机负载均衡(default)RoundRobin 轮询负载均衡普通轮询/平滑轮询算法(Nginx中有使用)LeastActive 最少活跃调用数负载均衡越慢的服务越少调用,活跃计数差(调用前计数器+1,调用后计数器-1,如果一个服务提供者计数差很大,则说明该服务处理的比较慢,则减少请求量,防止服务客户端阻塞,以及服务端崩溃。)一致性Hash负载均衡默认根据只对第一个参数hash,可以通过<dubbo:parameter key="has原创 2020-06-15 23:48:29 · 4272 阅读 · 0 评论 -
Davids原理探究:Dubbo过滤器原理
文章目录Dubbo过滤器原理概述使用方式@Activate注解启用XML配置启用规则总体结构图作用列表过滤器链初始化的实现原理Dubbo过滤器原理概述Dubbo过滤器提供了服务提供者和消费者的调用拦截,即每次执行RPC调用的时候,对应的过滤器都会生效。虽然过滤器功能强大,但由于每次调用的时候都会执行,因此在使用的时候需要注意它对性能的影响。使用方式在Dubbo中又很多内置过滤器,并且大多数都是使用@Activate注解默认启用的,比如ContextFilter。对于自行扩展的过滤器有以下两种启用方原创 2020-06-14 18:57:43 · 4371 阅读 · 0 评论 -
Davids原理探究:Dubbo SPI和Java SPI实现原理
Java SPI实现原理原创 2020-06-14 18:55:46 · 2304 阅读 · 0 评论 -
Davids原理探究:Dubbo调用流程图
Dubbo调用流程图原创 2020-06-12 18:11:33 · 1423 阅读 · 0 评论 -
Davids原理探究:Dubbo路由实现原理
文章目录Dubbo路由实现原理ConditionRouter(条件路由)条件路由的参数规则Dubbo路由实现原理Dubbo的路由分为条件路由、文件路由和脚本路由,对应的dubbo-admin中三种不同的规则配置方式。条件路由是用户使用Dubbo定义的语法规则去写的路由规则;文件路由则需要用户提交一个文件,里面写着对应的路由规则,框架基于文件读取对应的规则;脚本路由则是使用JDK自身的脚本引擎解析路由规则脚本,所有JDK脚本引擎支持的脚本都能解析,默认是JavaScript。ConditionRout原创 2020-06-12 17:26:10 · 4781 阅读 · 0 评论 -
Davids原理探究:Dubbo服务暴露原理
文章目录Dubbo服务暴露和服务消费原理(基于Dubbo 2.6.5)配置解析原理基于XML配置解析原理schema模块说明基于注解配置解析原理@EnableDubboServiceAnnotationBeanPostProcessor的作用ReferenceAnnotationBeanPostProcessor的作用服务暴露原理配置初始化服务暴露的核心类ServiceConfig注册中心暴露服务拦截器初始化服务消费原理概述服务消费过程Dubbo优雅停机原理解析Dubbo服务暴露和服务消费原理(基于Dub原创 2020-06-12 09:50:12 · 4332 阅读 · 0 评论 -
Davids原理探究:Dubbo源码编译(2.7.8)
文章目录编译Dubbo源码(2.7.8)第一步:下载ZooKeeper第二步:配置maven 阿里云镜像(可以但不必要-_-!!!)第三步:下载Dubbo源码第四步:开始编译第五步:导入项目第六步:测试Demo编译Dubbo源码(2.7.8)第一步:下载ZooKeeperZooKeeper-3.6.1第二步:配置maven 阿里云镜像(可以但不必要-_-!!!)打开setting.xml文件,添加阿里云镜像,国内镜像会快一些。<mirror> <id>alimaven原创 2020-06-08 18:11:19 · 2434 阅读 · 0 评论 -
Davids原理探究:Dubbo注册中心(ZooKeeper、Redis)实现原理
文章目录Dubbo注册中心注册中心概述工作流程Zooeeper原理概述Dubbo注册中心注册中心概述在Dubbo微服务体系中,注册中心是其核心组件之一。Dubbo通过注册中心实现了分布式环境中各服务之间的注册和发现,是各分布式节点之间的纽带。其主要作用如下:动态加入。一个服务提供者通过注册中心可以动态地把自己暴露给其他消费者,无需消费者逐个去更新配置文件。动态发现。一个消费者可以动态的感知新的配置,路由规则和新的服务提供者,无需重启服务使之生效。动态调整。注册中心支持参数的动态调整,新参数自动原创 2020-06-08 18:12:08 · 4625 阅读 · 0 评论