
Dubbo
文章平均质量分 96
hosaos
^_^
展开
-
聊聊Dubbo3.0新特性之应用级服务发现
文章目录什么是服务发现信息孤岛问题Http通信微服务与Rpc框架Dubbo2.0中的接口级服务发现应用级服务发现兼容性设计Rpc元数据同步机制性能表现参考资料什么是服务发现信息孤岛问题计算机诞生之初,往往信息系统都是以单机的形式存在,系统与系统交互较少,存在信息孤岛问题,数据的交换得通过硬件设备的拷贝、人工在不同系统之间进行拷贝(硬盘、U盘等)。随着互联网的兴起,任何一个系统都难以在互联网浪潮中“独善其身”,不同服务、系统之间往往存在信息互通的需求,比如浏览淘宝网是用户的电脑请求淘宝网的服务器获得相关原创 2022-02-11 14:57:52 · 2419 阅读 · 0 评论 -
JDK、Dubbo中的线程池
如果某个Dubbo请求并发比较高,同时响应上由于数据库原因或者网络原因导致接口内部请求慢,则该Dubbo方法及其容易导致Dubbo里的线程池耗尽,此时消费端会收到如下异常堆栈信息Caused by: java.util.concurrent.RejectedExecutionException: Thread pool is EXHAUSTED! Thread Name: DubboServer...原创 2019-12-26 15:34:06 · 1509 阅读 · 0 评论 -
Dubbo-Router条件路由、脚本路由使用
上篇文章介绍了服务目录 Directory。服务目录在刷新 Invoker 列表的过程中,会通过 Router 进行服务路由,筛选出符合路由规则的服务提供者。服务路由包含一条路由规则,路由规则决定了服务消费者的调用目标,即规定了服务消费者可调用哪些服务提供者。Dubbo 目前提供了三种服务路由实现,分别为条件路由 ConditionRouter、脚本路由 ScriptRouter 和标签路由 Ta...原创 2019-12-25 14:06:39 · 2566 阅读 · 0 评论 -
Dubbo-Directory目录源码解析
还是先从整体架构入手,先看下Dubbo官方的架构设计图,调用方从集群中选择一个提供者时,首先得调用Directory获取Invoker列表,再根据配置的路由规则过滤掉不符合的提供者Directory 的用途是保存 Invoker,可简单类比为 List。其实现类 RegistryDirectory 是一个动态服务目录,可感知注册中心配置的变化,它所持有的 Invoker 列表会随着注册中心内...原创 2019-12-11 13:57:57 · 548 阅读 · 0 评论 -
Dubbo-集群容错之Cluster
插播面试题看源码我比较喜欢带着目的性,带着问题看,集群dubbo中"读接口"和"写接口"有什么区别?谈谈dubbo中的不同容错机制及特点?集群容错架构设计首先上一张Dubbo官网的集群容错的架构设计图其中有几个关键角色Directory:其用途是保存 Invoker,可简单类比为 List。其实现类 RegistryDirectory 是一个动态服务目录,可感知注册中心配置的...原创 2019-12-09 15:10:17 · 592 阅读 · 2 评论 -
Dubbo-服务导出、暴露实现原理
文章目录入口之Spring与Dubbo集成XML配置XML配置解析ServiceBean与Spring的整合服务暴露配置检查多协议服务暴露注册中心地址获取URL信息组装本地导出Filter责任链多注册中心远程导出NettyServer 创建ExchangeServerTransporterNettyServer入口之Spring与Dubbo集成XML配置先看一段XML下的Dubbo服务配置...原创 2019-11-13 10:35:43 · 1162 阅读 · 1 评论 -
Dubbo-自适应扩展机制之Adaptive注解原理
文章目录什么是自适应机制@Adaptive注解ExtensionLoader#getAdaptiveExtension自适应代码生成自适应代码编译什么是自适应机制上篇讲解Dubbo SPI机制的文章中提到,Dubbo里可以通过ExtensionLoader.getExtensionLoader(XXXClass).getExtension(key)的形式来获取接口的某个实现类。但这种形式本质...原创 2019-10-28 17:54:20 · 2316 阅读 · 1 评论 -
Dubbo-Java SPI与Dubbo SPI
文章目录什么是SPI使用场景Java SPIDemo缺点Dubbo SPIDemoDubbo SPI优点ExtensionLoader.getExtensionIOCAOP什么是SPISPI全称Service Provider Interface,在面向的对象的设计里,不同模块之间推崇面向接口编程,不建议在模块中对实现类进行硬编码。一旦代码里涉及具体的实现类,就违反了可拔插的原则,如果需要替换...原创 2019-10-26 15:02:51 · 476 阅读 · 0 评论