文章分类 -  分布式

摘要:主要是想整理和回顾一下当先Zookeeper的问题,因为昨天在与同事聊天的过程中,有很多人比较极端的认为当下的ZK已经要退出历史的舞台了,现在已经没有用武之地了。但是笔者觉得事情不是那么的绝对,或者说就算是ZK要退出历史舞台,我们也应该是知道为什么,而不是单纯的现在很多项目不使用了,我们就一棒子打死 阅读全文
posted @ 2021-06-24 18:36 SyrupzZ 阅读(3148) 评论(0) 推荐(3)
摘要:在工作当中相信大家一定遇到了各种各样的事务问题,本文拟从ACID开始谈起,最终到目前比较常用的分布式事务,让大家对事务有一个整体贯连性的理解 事务的基本特性 逻辑日志与物理日志 隔离性及Mysq的隔离性 分布式事务 一、事务的基本特性 提起事务就不能不提ACID,但是需要知道这个不是Mysql的规范 阅读全文
posted @ 2020-03-13 18:41 SyrupzZ 阅读(512) 评论(0) 推荐(0)
摘要:聊到容错就不得不提到下面这张图,比较详细的勾画了整个处理流程对象之间的关系。下面我会结合这张图已经源码,聊一聊Dubbo的容错机制。 这里的 Invoker 是 Provider 的一个可调用 Service 的抽象,Invoker 封装了 Provider 地址及 Service 接口信息,Dir 阅读全文
posted @ 2020-03-13 17:49 SyrupzZ 阅读(390) 评论(0) 推荐(0)
摘要:最近看到Dubbo的SPI加载过程,对其中的动态加载Adaptive拓展点的时候获取类加载器的过程有点困惑,查阅了很多资料之后,这里记录一下 首先来看一下Dubbo中在动态编译一个拓展点的时候获取类加载器的源码: public static ClassLoader getClassLoader(Cl 阅读全文
posted @ 2020-03-13 17:40 SyrupzZ 阅读(596) 评论(0) 推荐(0)
摘要:今天通过源码的方式来了解一下Dubbo的负载均衡是怎么处理的。 首先我们看一下负载均衡部分的代码结构: LoadBalance : 接口,定义了一个选择的方法。 AbstractLoadBalance :所有负载均衡实现的抽象类,实现了LoadBalance接口,定义了获取权重和计算权重的方法,定义 阅读全文
posted @ 2020-03-13 16:16 SyrupzZ 阅读(173) 评论(0) 推荐(0)
摘要:zookeeper在我们系统做分布式数据一致性的时候使用还是比较多的,所以对于一些比较重要的场景,实现原理还是有必要深入了解一下的,今天就对zk的Leader选举过程来说明一下。 首先要明确zk集群中要发生Leader选举的两种场景 : 服务器初始化启动 服务器运行期间无法和Leader建立连接 然 阅读全文
posted @ 2019-11-08 19:07 SyrupzZ 阅读(625) 评论(0) 推荐(0)