dubbo

源码级深度理解 Java SPI

作者:vivo 互联网服务器团队- Zhang Peng SPI 是一种用于动态加载服务的机制。它的核心思想就是解耦,属于典型的微内核架构模式。SPI 在 Java 世界应用非常广泛,如:Dubbo、Spring Boot 等框架。本文从源码入手分析,深入探讨 Java SPI 的特性、原理,以及在 ... »

vivotech

Dubbo-聊聊注册中心的设计

前言 Dubbo源码阅读分享系列文章,欢迎大家关注点赞 SPI实现部分 Dubbo-SPI机制Dubbo-Adaptive实现原理Dubbo-Activate实现原理Dubbo SPI-Wrapper 注册中心作用 在整个Duubbo架构中,注册中心主要完成以下三件事情: Provider应用启动后 ... »

Dubbo扩展点SPI实践示例解析

目录 正文 扩展点配置: 扩展实现类: 拦截配置文件: 调用拦截扩展: 拦截扩展说明: 常用约定: 实现细节: 扩展点的几个特点: 扩展点自动包装 扩展点自动装配 扩展点自适应 扩展点自动激活 正文 Dubbo的扩展点加载从JDK标准的SPI(Service Provider In »

Dubbo 03: 直连式 + 接口工程

进一步改正dubbo框架中简单的直连式的不足 需要用到3个相互独立的maven工程,项目1为maven的java工程作为接口工程,项目2,3为maven的web工程 工程1:o3-link-interface 作为接口工程 工程2:o4-link-userservice-provider 作为服务的 ... »

nefu-wangxun

Dubbo 02: 直连式

直连式 需要用到两个相互独立的maven的web项目 项目1:o1-link-userservice-provider 作为服务的提供者 项目2:o2-link-consumer 作为使用服务的消费者 项目1 结构 pom文件 <project xmlns="http://maven.apache. ... »

Dubbo2.7详解

Spring与Dubbo整合原理与源码分析 【1】注解@EnableDubbo @Target({ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Inherited @Documented @EnableDubboConfig // @ ... »

ASP.NET Core GRPC 和 Dubbo 互通

一.前言 Dubbo 是比较流行的服务治理框架,国内不少大厂都在使用。以前的 Dubbo 使用的是私有协议,采集用的 hessian 序列化,对于多语言生态来说是极度的不友好。现在 Dubbo 发布了新版本 v3,推出了基于 gRPC 的新协议 Triple,完全兼容 gRPC。目前和几个小伙伴正在 ... »

stulzq

SpringBoot怎么搭建Dubbo项目实现斐波那契第n项

这篇文章主要介绍“SpringBoot怎么搭建Dubbo项目实现斐波那契第n项”,在日常操作中,相信很多人在SpringBoot怎么搭建Dubbo项目实现斐波那契第n项问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”SpringBoot怎么搭建Dubbo项目实现斐波那契 »

Dubbo-Adaptive实现原理

前言 前面我们已经分析Dubbo SPI相关的源码,看过的小伙伴相信已经知晓整个加载过程,我们也留下两个问题,今天我们先来处理下其中关于注解Adaptive的原理。 什么是@Adaptive 对应于Adaptive机制,Dubbo提供了一个注解@Adaptive,该注解可以用于接口的某个子类上,也可 ... »

Dubbo-SPI机制

前言 SPI全称为Service Provider Interface,是Java提供的一种服务发现机制。SPI的本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。 正因此特性,我们可以很容易的通过SPI机制为我们的程序提供拓展 ... »

Dubbo源码(八) - 负载均衡

前言 本文基于Dubbo2.6.x版本,中文注释版源码已上传github:xiaoguyu/dubbo 负载均衡,英文名称为Load Balance,其含义就是指将负载(工作任务)进行平衡、分摊到多个操作单元上进行运行。 例如:在Dubbo中,同一个服务有多个服务提供者,每个服务提供者所在的机器性能 ... »

konghuanxi

Dubbo源码(七) - 集群

前言 本文基于Dubbo2.6.x版本,中文注释版源码已上传github:xiaoguyu/dubbo 集群(cluster)就是一组计算机,它们作为一个总体向用户提供一组网络资源。这些单个的计算机系统就是集群的节点(node)。 在Dubbo中,为了避免单点故障,同一个服务允许有多个服务提供者,也 ... »

konghuanxi

Dubbo源码(六) - 服务路由

前言 本文基于Dubbo2.6.x版本,中文注释版源码已上传github:xiaoguyu/dubbo 今天,来聊点短的,服务路由Router,本文讲的是路由的调用路径,不讲路由的规则解析。想了解规则解析的可以去官方文档:服务路由 Dubbo的路由,就是根据规则,规定了哪些服务消费者可调用哪些服务提 ... »

konghuanxi

Dubbo源码(五) - 服务目录

前言 本文基于Dubbo2.6.x版本,中文注释版源码已上传github:xiaoguyu/dubbo 今天,来聊聊Dubbo的服务目录(Directory)。下面是官方文档对服务目录的定义: 服务目录中存储了一些和服务提供者有关的信息,通过服务目录,服务消费者可获取到服务提供者的信息,比如 ip、 ... »

konghuanxi

Dubbo源码(四) - 服务引用(消费者)

前言 本文基于Dubbo2.6.x版本,中文注释版源码已上传github:xiaoguyu/dubbo 上一篇文章,讲了Dubbo的服务导出: Dubbo源码(三) - 服务导出(生产者) 本文,咱们来聊聊Dubbo的服务引用。 本文案例来自Dubbo官方Demo,路径为: dubbo/dubbo- ... »

konghuanxi

Dubbo源码(三) - 服务导出(生产者)

前言 本文基于Dubbo2.6.x版本,中文注释版源码已上传github:xiaoguyu/dubbo 在了解了Dubbo SPI后,我们来了解下Dubbo服务导出的过程。 Dubbo的配置是通过DubboNamespaceHandler读取解析的,其中会将Dubbo服务提供者封装成ServiceB ... »

konghuanxi

10 Dubbo 配置实战

Dubbo 配置实战 快速入门 dubbo 建议看这篇文章是在学习了快速入门 dubbo 那篇文章的基础上来学习 配置说明 文档地址 https://dubbo.apache.org/zh/index.html 关于 dubbo 的配置说明 在文档中都有比较详细的说明,下面举例的都是较为常用的 1 ... »

# 8 快速入门 dubbo

8 快速入门 dubbo 所需资料 注册中心 Zookeeper 安装 zookeeper 官方推荐使用 zookeeper 注册中心; 注册中心负责服务地址的注册与查找,相当于目录服务; 服务提供者和消费者只在启动时与注册中心交互,注册中不转发请求,压力较小; Zookeeper 是 apache ... »

7 什么是dubbo

什么是dubbo 快速入门dubbo 了解什么是dubbo之前,我们得先了解什么是分布式系统? 《分布式系统原理与范型》定义: 分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统 分布式系统(distributed system)是建立在网络之上的软件系统。 简单来说:多个(不 ... »