dubbo系列之网络通信-provider的接收与发送原理 发表于 2018-04-02 dubbo系列之网络通信-provider的接收与发送原理简要绿色区域在《dubbo系列之服务发布-流程》里面有提到过,这里简单回顾一下。 ThreadPool:线程池,在NettyServer类中设置了boss和wroker线程池。doOpen()1234567891011121314151617 ... 阅读全文 »
dubbo系列之网络通信-consumer发送原理 发表于 2018-03-31 dubbo系列之网络通信-consumer发送原理简要先来看一张dubbo的网络通信架构图(也可以说是调用链设计图) 备注:inherit代表继承interface接口,init代表初始化,call代表调用 这篇博客主要就是介绍红色区域,红色区域下面在前几篇博客都已经介绍过了。 源码介绍接着前面l ... 阅读全文 »
dubbo系列之实现SOA服务降级 发表于 2018-03-26 dubbo系列之实现SOA服务降级简介什么是服务开关?先讲一下开关的由来,例如淘宝在11月11日做促销活动,在交易下单环节,可能需要调用A、B、C三个接口来完成,但是其实A和B是必须的, C只是附加的功能(例如在下单的时候做一下推荐,或push消息),可有可无,在平时系统没有压力,容量充足的情况下 ... 阅读全文 »
dubbo系列之集群容错-loadbalance负载均衡 发表于 2018-03-24 dubbo系列之集群容错-loadbalance负载均衡简要从多个Invoker中选取一个做本次调用。具体包含很多种负载均衡算法。 源码构成LoadBalance接口123456789@SPI(RandomLoadBalance.NAME)public interface LoadBalance & ... 阅读全文 »
dubbo系列之集群容错-Cluster集群 发表于 2018-03-24 dubbo系列之集群容错-Cluster集群简要cluster是用来干什么的? cluster少Directory中的多个invoker伪装成一个invoker,来容错,调试失败重试。 源码构成Cluster接口123456@SPI(FailoverCluster.NAME)public inter ... 阅读全文 »
dubbo系列之集群容错-router路由规则 发表于 2018-03-24 dubbo系列之集群容错-router路由规则简介ScriptRouter:脚本路由 MockInvokersSelector :默认路由 ConditionRouter:条件路由,后台管理的路由配置都是条件路由。 本篇主要就是介绍ConditionRouter。 灰度发布灰度发布是指在黑与白之 ... 阅读全文 »
dubbo系列之集群容错-directory目录 发表于 2018-03-23 dubbo系列之集群容错-directory目录简介Directory接口目录服务 StaticDirectory:静态目录服务,他的Invoker是固定的。 RegistryDirectory:注册目录服务,他的Invoker集合数据来源于zk注册中心的。 StaticDirectory用的比 ... 阅读全文 »
dubbo系列之服务引用-原理 发表于 2018-03-19 前言前面几篇关于dubbo的文章一直都是介绍服务暴露,这篇文章就来说说服务的引用。 源码构成先来一张官方文档上的图 看代码最重要的一步就是找到代码的起点,服务消费的起点就是dubbo-demo-cosumer.xml文件 12<!-- 生成远程服务代理,可以和本地bean一样使用demoSe ... 阅读全文 »
dubbo系列之zookeeper订阅节点 发表于 2018-03-15 dubbo系列之zookeeper订阅节点源码构成RegistryProtocol类1registry.subscribe(overrideSubscribeUrl, overrideSubscribeListener);//订阅节点 FailbackRegistry类subscribe()——向服 ... 阅读全文 »
dubbo系列之zookeeper创建节点 发表于 2018-03-12 dubbo系列之zookeeper创建节点前期准备先在Idea上安装zookeeper的可视化插件,方便查看节点变化。 启动zk服务端 源码构成RegistryFactory类1registry.register(registedProviderUrl);//创建节点 debug进去看看吧 1234 ... 阅读全文 »