1.SPIhttp://dubbo.apache.org/zh-cn/docs/source_code_guide/dubbo-spi.html介绍: SPI 全称为 Service Provider Interface,是一种服务发现机制。 SPI 的本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。 Dubbo重写了Ja
转载
2024-04-30 18:38:01
39阅读
接下来的几篇文章开始介绍Dubbo的源码,本章介绍Dubbo的启动原理。(本来想把Dubbo服务的发布原理一起放上的,奈何微信公众号对字数有限制)4. Dubbo框架设计官方文档:http://dubbo.apache.org/zh-cn/docs/dev/design.html4.1 Business部分在Business部分,只有一个层面:Service对于Service层,只是提
转载
2024-03-19 10:48:22
11阅读
在之前的文章中介绍了Dubbo的出现背景以及使用方式,下面我们通过源码的方式来分析一下Dubbo的架构。1、准备在分析探索Dubbo架构原理之前,我们需要准备一下环境,用于后面我们来分析dubbo的架构。1.1 ZookeeperDubbo使用Zookeeper为注册中心。所以需要在本地启动zookeeper,作为Dubbo的注册中心。启动Zookeeper服务:用于dubbo的注册中心。启动Zo
转载
2024-04-05 13:50:58
61阅读
一 前言 之前的文章描述了如何简单的搭建dubbo服务,会用只是迈入了初级阶段。要想更好的理解原理,只能通过源码。为什么要看源码呢?因为好的源码是一些大牛级别的工程师呕心沥血的结晶,这里面渗透着好多东西,比如设计模式,算法,以及我们可以更清楚的从开发者的角度去理解代码。所以在接下来的时间里会记录些dubbo核心源码的心得。二 dubbo核心模块 &n
转载
2024-02-13 12:15:25
35阅读
前言最近在看RPC框架,选择先看dubbo,再看netty,最后手写一个RPC的学习路线,结合雷神关于dubbo的讲解,对源码流程进行一个简单的记录原理所谓RPC就是远程服务调用的意思,那么dubbo怎么完成远程调用的呢?原理图如下[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9fEwo2Az-1623312993257)(java源码解析之dubbo.assets
转载
2024-04-03 08:57:35
41阅读
原文链接: 作者四月天五月雨^_^,转载请注明出处,谢谢声明本文参考dubbo官网:http://dubbo.apache.org/en-us/docs/user/preface/architecture.html基础架构,理论篇可参考:dubbo使用小全 分析 理解 附GitHub 源码 ( 一 ) 简单搭建demo可参考:dubbo使用小全 分析 理解 附GitHub 源码 ( 二 )本文在上
转载
2024-07-18 21:03:59
74阅读
前言dubbo是微服务架构常用的框架,但是光会用是不行的,还要深入了解它的原理,学习它的思想和书写规范。本文是初步了解dubbo内核,附部分源码解读。后续会深入了解dubbo源码。一、总结 1.dubbo简介dubbo内核:由“微服务+插件”组成。dubbo内核的构成:SPI、Adaptive、Wrapper和Activate。SPI是微内核,其他三个是插件。dubbo的
转载
2024-04-08 10:03:11
51阅读
Dubbo源码学习一、概述Dubbo是一款高性能、轻量级基于Java的RPC开源框架。平时使用的非常多。但仅仅使用很难了解背后的原理,更不用提经常出现在面试中,这篇文章主要从源码的角度解析 dubbo 比较重要的三个模块:服务导出、服务引入、负载均衡。还有很多其他重要模块如:服务路由、消费者集群、通信协议、服务治理等等,由于篇幅原因将在以后的其他博客分享。1.1 主要组件Dubbo 在使用上有5个
转载
2024-04-09 09:45:20
57阅读
Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案,是阿里巴巴的一个开源项目。在这里希望花几个月的时间,在Dubbo官网的开发者指南和网上各种已有的分析资料的帮助下,通过阅读源码,学习并领悟到dubbo架构设计的精妙之处。 随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对
转载
2024-05-19 21:28:45
16阅读
本文介绍Dubbo服务的调用原理。6. Dubbo的服务调用流程Dubbo的调用链在官方文档中也有描述:http://dubbo.apache.org/zh-cn/docs/dev/design.html以源码解析为标准,分析调用过程xxxService.xxxMethod();当远程调用方法时,经历了如下过程6.1 代理对象调用服务上述的xxxService其实是一个代理对象,它基于
转载
2024-04-15 09:38:27
46阅读
文章目录一、怎么查找开源项目二、怎么使用项目练手 一、怎么查找开源项目以GitHub为例,GitHub上的开源项目非常多,且全面,不过速度比较慢。 码云gitee速度比较快,如果需要的话,可以将GitHub上的代码同步到码云上从码云下载。而且码云gitee搭建个人博客也快,还有一个Web IDE的功能,可在线浏览代码,且体验很好。GitHub上的项目,一般有项目名,项目描述信息,README 等
转载
2024-06-13 16:40:57
101阅读
Dubbo源码解读前篇:Dubbo 概述Dubbo是阿里巴巴公司开源的一个高性能的分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用以及SOA服务治理方案。其实,如果没有分布式的需求是不需要使用Dubbo的,只有在分布式的时候,才有使用dubbo这样的分布式服务框架的需求,并且本质上是个服务调用的东东 (告别Web Service模式中的WSdl,以服务者与消费者的方式在dubbo上注册
转载
2024-04-21 09:57:15
39阅读
大家好,我是烤鸭: dubbo 源码解析: 1.服务导出 介绍: Dubbo 服务导出过程始于 Spring 容器发布刷新事件,Dubbo 在接收到事件后,会立即执行服务导出逻辑。整个逻辑大致可分为三个部分,第一部分是前置工作,主要用于检查参数,组装 URL。第二部分是导出服务,包含导出服务到本地 (JVM),和导出服务到远程两个过程。第三部分是向注册中心注
转载
2024-04-21 13:38:23
26阅读
本文作为dubbo源码分析的第一章,先从总体上来分析一下dubbo的代码架构、功能及优缺点,注意,本文只分析说明开源版本提供的代码及功能。1.dubbo的代码架构: spring适配层:常规的spring适配方法,内容包括使用dubbo.xsd文件来定义dubbo相关的元素及属性;DubboNamespaceHandler用来向spring容器注册dubbo的
1. ReferenceBean 这个bean实现了InitializingBean接口2. 这个类实现了接口的afterPropertiesSet()这个方法,在spring容器启动时,property设置完之后就会调用实现了InitializingBean接口的afterPropertiesSet方法 2.1 方法里分别对consumerConfig,applicationConfig,Mo
转载
2024-06-08 10:20:54
25阅读
扑街前言:之前的文章说明了zookeeper的使用及源码,那么本次我们继续了解和zookeeper的黄金搭档dubbo的相关内容,当然dubbo也是典型的rpc框架,所以我们从客户端和服务端逐个分析,后续还有一系列文章,慢慢来。SPI机制 &nb
转载
2024-04-20 20:01:19
320阅读
最近听到有朋友公司用这个Dubbo,正好想了解一下源码。经过一小段时间分析,发现知识点非常多,很有价值。包括:动态代理,spring整合,各种设计模式,线程池,锁,netty这样基于nio的tcp框架,协议的设计,当然最重要的是一种解决问题的思路,就吧这些体会记录下来: 网上已经看到一些源码分析,总感觉缺少点什么,看完文章还是感觉
转载
2024-05-03 07:53:07
47阅读
dubbo框架设计一、dubbo框架整体设计二、各层说明三、dubbo工程模块分包四、依赖关系五、调用链 本系列文件基于 dubbo 2.7.14 做源码参考,欢迎各位小伙伴一起探讨交流,有问题,欢迎评论区进行留言。好了,废话不多说,下面直接上硬货。在阅读 dubbo 源码时,建议小伙伴们详细了解与使用一下 dubbo 的 SPI 机制,这样在阅读 dubbo 源码时,才不会迷路,可以参照下面资
转载
2024-03-27 09:51:42
22阅读
GitHub注册以及安装教程 首先,我们了解一下github.gitHub 是一个面向开源及私有软件项目的托管平台,因为只支持 git 作为唯一的版本库格式进行托管,故名 gitHub。github 于 2008 年 4 月 10 日正式上线,除了 git 代码仓库托管及基本的 Web 管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gi
转载
2023-10-12 14:18:27
256阅读
一、linux环境编译 (ubuntu1604_64)1)下载FFmpeg源码 https://ffmpeg.org/download.html 下载最新的版本,ffmpeg-x.x.x.tar.gz,再通过命令解压:tar -xjvf ffmpeg-x.x.x.tar.bz2 或者git拉下来,git clo
转载
2023-11-14 22:23:49
768阅读