Dubbo
文章平均质量分 68
顺kai
这个作者很懒,什么都没留下…
展开
-
Dubbo负载均衡策略
Dubbo负载均衡概述 Dubbo负载均衡是具有SPI实现的,默认为随机负载均衡,还有一致性Hash、最少使用、轮询。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IYv1Bfil-1615789627718)(/Users/ssk/Library/Application%20Support/typora-user-images/image-20201217221957258.png)] 抽象父类AbstractLoadBalance有两个权原创 2021-03-15 14:27:38 · 239 阅读 · 0 评论 -
Dubbo异步转同步
Dubbo是一款开源RPC框架,底层使用Netty作为默认的数据传输方式,那么请求处理理论上是异步的,但是我们在使用Dubbo时,是同步拿到结果的,这是因为Dubbo框架帮我们做了异步转同步的操作。 构造一个DefaultFuture,并将DefaultFuture放在Map中,key为请求是生成的唯一id。private static final Map<Long, Channel> CHANNELS = new ConcurrentHashMap<>();..原创 2021-02-01 18:54:54 · 1418 阅读 · 1 评论 -
Dubbo服务暴露
Dubbo服务暴露分为两个步骤:先将服务封装成Invoker、在将Invoker导出。Dubbo的服务导出主要封装在ServiceBean。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XulyBPqU-1606738422173)(http://images.sunshunkai.com//picimage-20201130200840868.png)]ServiceBean实现了ApplicationListener接口,监听Spring事件,在容器刷新的时候回触发服原创 2020-11-30 20:15:04 · 954 阅读 · 2 评论 -
浅谈Dubbo之SPI机制
什么是SPI从面向对象的角度来说,接口不应依赖与实现。就拿操作数据库来说,每种数据库的操作方式都是不同的,如果更换了数据库,那么我们的代码就要推翻重来,JDBC就是一套规范,定义了操作方式的基本接口,各数据库厂商去做具体的实现,这样程序就不依赖底层的实现。但是我们在编写程序的时候,怎么知道需要使用的是哪种数据库呢?这里就要说到JAVA中提到的SPI(Service Provider Interface),是JDK内置的一种动态服替换发现服务实现者机制。JAVA实现SPI需要如下步骤:(1)编写接口并实原创 2020-11-20 20:49:39 · 389 阅读 · 4 评论