Dubbo源码
文章平均质量分 96
编程吴彦祖
pluto
展开
-
Dubbo源码解析-Dubbo-Register-RedisRegister
1.Redis注册中心 redis支持很多的数据结构类型,key_value模式,内存存储数据,因此速度很快,效率很高; dubbo利用JRedis来连接到Redis分布式哈希键-值数据库,JedisPool是一个线程安全的网络连接池。可以用JedisPool创建一些可靠Jedis实例,可以从池中获取Jedis实例,使用完后再把Jedis实例还回JedisPool。这种方式可以避免创建大量socket连接并且会实现高效的性能。2.RedisRegistry 继承F...原创 2020-05-27 16:26:43 · 662 阅读 · 0 评论 -
Dubb源码解析-Dubbo-Register-ZookeeperRegister
1.ZookeeperRegister模块简介 本文章针对Zookeeper注册中心,注册,订阅源码设计导读;至于Zookeeper的优势,特点我们不做太多讲解; 下图为zookeeper存放数据的原理,为树状;因此我们这个模块本质要做的就是:将Zookeeper的数据存放,删除:Dubbo集成CuratorFramework,客户端可以对Redis进行连接,删除,修改,新增节点,添加监听器等操作,来满足我们的业务需求; 数据...原创 2020-05-27 09:48:29 · 607 阅读 · 0 评论 -
Dubbo源码解析-Dubbo-Register-API
1.注册中心作用 从官网摘的图,我们可以简单了解其流程;服务提供者在注册中心进行注册(本质是存放一些关键数据:提供者IP,Port,serviceKey,method,version,group等等信息); 服务消费者进行订阅(消费者获取提供者的关键数据); 消费者与注册中心通过监听器对数据进行同步(如果服务提供者的信息修改,销毁,新增,监听器来同步); 服务消费者调用服务提供者(根据获取的信息,进行调用,简单理解为:给服务提供者Socket端口发送数据,等待响应); 调...原创 2020-05-26 21:53:37 · 1226 阅读 · 0 评论 -
Dubbo源码解析-SPI.Dubbo可扩展机制原理
1.背景,改进 SPI的全名为Service Provider Interface,面向对象的设计里面,模块之间推荐基于接口编程,而不是对实现类进行硬编码,这样做也是为了模块设计的可拔插原则。为了在模块装配的时候不在程序里指明是哪个实现,就需要一种服务发现的机制,jdk的spi就是为某个接口寻找服务实现 了解Dubbo/阅读过官网文档的同学,可以看到Dubbo内部存在着大量的扩展,如Protocol:DubboProtocol,InJvmProtocol; Cluster:Failov...原创 2020-05-25 21:46:27 · 317 阅读 · 0 评论