dubbo
文章平均质量分 92
zlj1217
这个作者很懒,什么都没留下…
展开
-
dubbo2.7时间轮的应用
dubbo内部有比较多定时任务的管理功能,JDK也提供了Timer和DelayedQueue等工具类,可以实现简单的定时任务管理,其底层实现就是使用的堆这种数据结构,存取的时间复杂度是O(nlogN),无法支持大量的定时任务。dubbo内部采用了时间轮的方式来管理定时任务。应用场景比如:dubbo的心跳机制、dubbo客户端超时检测等。时间轮是一种高效的、批量管理的定时任务的调度模型。时间轮一般会实现一个环形结构,类似于时钟,分为很多槽,每个槽代表一个时间间隔,每个槽使用双向链表来存储定时任务;指针周期性地原创 2022-07-01 06:14:12 · 954 阅读 · 1 评论 -
dubbo spi原理和源码记录
dubbo的spi概述采用spi是为了更好的达到OCP原则(对扩展开放,对修改封闭)。dubbo采用微内核+插件的架构。内核部分功能稳定,面向功能的可拓展性实现都是由插件来完成的,内核只是管理插件和应用插件实现。这样更灵活。dubbo就是采用spi来加载插件的。SPI原理jdk中的spi使用需要在resource目录下的META-INFO/services下新建对应SPI接口名称为名字的文件,然后将实现类的全限类名作为文件内容。其文件内容:然后利用ServiceLoader接口去加载和使原创 2021-07-14 19:36:41 · 135 阅读 · 0 评论 -
dubbo filter执行顺序的理解
理解dubbofilter的执行顺序https://blog.csdn.net/donlian/article/details/84719823对dubbo filter执行顺序可以看下这篇。背景在处理网关泛化调用的异常时,需要在provider端将可读异常的message返回给调用方,方便展示。现有工程中有处理异常的filter:@Activate(group = Constants.PROVIDER, order=Integer.MIN_VALUE) @Slf4jpublic class原创 2021-03-29 23:28:29 · 1971 阅读 · 0 评论 -
dubbofilter的spi文件路径问题
自定义dubbofilter在使用dubbo框架的时候可以使用filter去实现一些拦截功能和调整拦截顺序,在每次调用的过程中,Filter的拦截都会被执行。当然除了Dubbo默认的filter,用户也可以自定义dubbo filter来实现对应的功能。这里记录一个遇到的spi文件路径问题。问题现象在测试自定义一个dubbo filter之后,发现并没有生效。对应的filter代码:@Activate(group = Constants.PROVIDER, order = Integer.MIN_原创 2020-05-20 23:39:43 · 438 阅读 · 0 评论 -
dubbo基础(五)——dubbo接口的特性设置
dubbo的一些配置之前的文章中写了dubbo的初步使用和dubbo和springboot的使用整合,这里来总结下dubbo框架暴露接口常用的配置项。启动时检查dubbo提供了在服务启动时的一些检查机制,这个机制包括consumer端对服务提供者的检查、dubbo对注册中心的检查。可以看下官方文档中dubbo:reference标签中关于check属性的配置。可以看到是默认在启动时检查...原创 2019-04-01 00:56:03 · 602 阅读 · 0 评论 -
dubbo基础(二)——dubbo简单demo
get start在上一篇中介绍了dubbo诞生的背景和框架的特性:dubbo概念和基本概念,这里就来一个dubbo的简单使用小体验。dubbo注册中心安装dubbo中的官方文档的快速启动使用的是multicast广播注册中心暴露服务地址,这里选择的是使用zk作为注册中心,因为zk是很多公司作为dubbo注册中心,并且zk也是dubbo官方文档中推荐使用的注册中心。本次是使用的mac上安装...原创 2019-03-18 23:56:46 · 372 阅读 · 1 评论 -
dubbo基础(四)——dubbo的配置加载
dubbo的配置在之前的文章中配置了spring boot和dubbo框架的使用(传送门:springboot使用dubbo框架),看到了把dubbo相关的配置配置在了配置文件中。这里官方文档中也去讲解了对应的dubbo配置的加载。dubbo的配置加载流程首先要知道dubbo的配置是在应用启动阶段,并且这里的配置包括应用配置、注册中心配置、服务配置等。dubbo的配置来源Jvm Sy...原创 2019-03-21 23:40:00 · 1463 阅读 · 0 评论 -
dubbo基础(三)——springboot使用dubbo框架
dubbo集成spring bootspring boot肯定是现在用的做多的开发框架,而dubbo框架是最流行的rpc框架之一,整合springboot和dubbo的使用很有必要。本篇博客还是根据上一篇中的dubbo简单demo的简单示例来整合spring boot。(上一篇传送门:dubbo-demo)依赖因为是springboot项目,dubbo官方也提供了dubbo的starter...原创 2019-03-20 22:52:01 · 482 阅读 · 0 评论 -
dubbo基础(一)——dubbo的整体简介
入门dubbo是公司选择rpc框架时首先会去选择的框架,好好了解dubbo框架是一个合格程序员的必经之路。这里作为dubbo的入门篇,把一些概念和官方文档搞清楚一定是最应该开始的步骤。dubbo框架诞生的背景dubbo框架满足的需求dubbo框架的整体架构...原创 2019-03-06 23:36:59 · 171 阅读 · 0 评论 -
使用telnet测试dubbo接口初使用
背景dubbo接口的测试不像controller的http接口那么容易测试,这里去了解了下使用telnet去测试参数没那么复杂的dubbo接口。正题首先看看一个dubbo接口的代码:public interface ShopAggregateRemoteService { /** * 获取所有产品类型 聚合字段的产品类型范围[软件+有伴服务] * @param...原创 2019-02-26 00:09:32 · 2477 阅读 · 0 评论