- 博客(13)
- 问答 (1)
- 收藏
- 关注
原创 一文彻底理解Dubbo SPI 自适应(Adaptive)拓展原理
有关Dubbo SPI的源码分析请参考前篇博文:一篇短文就能搞定Dubbo SPI 源码及示例,本文介绍SPI自适应扩展相关实例及源码(源码版本:2.7.7)。1. Dubbo SPI 自适应拓展简介在 Dubbo 中,很多拓展都是通过 SPI 机制进行加载的,比如 Protocol、Cluster、LoadBalance 等。有时,有些拓展并不想在框架启动阶段被加载,而是希望在拓展方法被调用...
2020-04-04 23:06:46 6365
原创 Rabbitmq高可用集权环境搭建
上篇相关博客:RabbitMQ消费端之消息确认及消息预取详解1. rabbitmq linux下安装在安装(搭建集群)之前,请先关闭防火墙#关闭防火墙 systemctl stop firewalld.service #禁止开机自启 systemctl disable firewalld.service1.1 安装Erlang在安装Rabbitmq之前,需要先安装erlang。...
2020-04-28 19:32:11 230
原创 RabbitMQ消费端之消息确认及消息预取详解
阅读本文之前,请先查看基础安装及操作:RabbitMQ 基本api使用 以及和spring、springboot整合1. 消费者如何确认消费?为什么要确认消费? 默认情况下 消费者在拿到rabbitmq的消息时 已经自动确认这条消息已经消费了, 讲白话就是rabbitmq的队列里就会删除这条消息了, 但是 我们实际开发中 难免会遇到这种情况, 比如说 拿到这条消息 发现我处理不了 比如说 参数...
2020-04-27 19:52:11 2021
原创 快看!Dubbo源码解读尾声——Dubbo的集群方案
在上篇博客Dubbo 服务引入源码分析中详细的分析了服务引入的过程,同时分析过程中也提到了集群聚合多个提供的代码但并未深究,因此本文将对dubbo的集群源码(版本2.7.7)进行详细分析。文章目录1. Dubbo集群简介2. Dubbo集群容错3. Dubbo集群源码分析3.1 Cluster 接口及其实现类分析3.2 Cluster Invoker及其子类实现3.2.1 FailoverClu...
2020-04-15 11:29:45 521
原创 Dubbo 服务引入源码分析不能再再详细了
前两篇文章超详细Dubbo服务导出源码解读、超详细Dubbo服务导出源码解读(二)详细分析了服务导出的过程,本篇文章我们开始分析服务引用过程。在 Dubbo 中,提供了两种方式引用远程服务。第一种是使用服务直连的方式引用服务,第二种方式是基于注册中心进行引用。服务直连的方式仅适合在调试或测试服务的场景下使用,不适合在线上环境使用。因此,本文我将重点分析通过注册中心引用服务的过程。1. 服务引用原...
2020-04-14 11:22:37 385
原创 超详细Dubbo服务导出源码解读(二)
服务导出部分源码太多,因此分成两部分编写,前半部分请参考:超详细Dubbo服务导出源码解读,本文将接着上部分但协议多注册中心源码继续解读。文章目录1. 导出核心逻辑2. Invoker 的创建3. 协议导出3.1 本地协议导出3.2 远程协议导出3.3 远程服务注册1. 导出核心逻辑前文已经分析到服务导出逻辑,所以本文我们首先分析导出服务的具体核心逻辑:/** * 导出服务到本地(及...
2020-04-12 14:52:56 757
原创 超详细Dubbo服务导出源码解读
1. Dubbo服务导出概述前面已经解读过Dubbo SPI相关的源码见:一篇短文就能搞定Dubbo SPI 源码及示例。本文主要研究一下 Dubbo 导出服务的过程。Dubbo 服务导出过程始于 Spring 容器发布刷新事件,Dubbo 在接收到事件后,会立即执行服务导出逻辑。整个逻辑大致可分为三个部分,第一部分是前置工作,主要用于检查参数,组装 URL。第二部分是导出服务,包含导出服务到本...
2020-04-10 12:41:41 818
原创 Tomcat组件及对应配置详解
文章目录1.概述2.组件及其配置详解2.1 顶层组件Service2.2 服务组件Service2.3 连接器 Connector2.4 引擎 Engine2.5 虚拟主机Host2.6 应用上下文 Context1.概述Tomcat是一个基于JAVA的WEB容器,其实现了JAVA EE中的 Servlet 与 jsp 规范,与Nginx apache 服务器不同在于一般用于动态请求处理。在架...
2020-04-07 15:09:24 281
原创 深入源码理解Dubbo负载均衡算法原理
上篇相关博客:一文彻底理解Dubbo SPI 自适应(Adaptive)拓展原理1.Dubbo负载均衡简介LoadBalance 中文意思为负载均衡,它的职责是将网络请求,或者其他形式的负载“均摊”到不同的机器上。避免集群中部分服务器压力过大,而另一些服务器比较空闲的情况。通过负载均衡,可以让每台服务器获取到适合自己处理能力的负载。在为高负载服务器分流的同时,还可以避免资源浪费,一举两得。负载...
2020-04-06 19:08:26 454
原创 很好的Java诊开源工具——Arthas
1.Arthas简介Arthas 是Alibaba开源的Java诊断工具。源码地址:https://github.com/alibaba/arthas官方文档:https://arthas.gitee.io/Arthas支持JDK 6+,支持Linux/Mac/Winodws,采用命令行交互模式,同时提供丰富的 Tab 自动补全功能,进一步方便进行问题的定位和诊断。Arthas可以帮助你解...
2020-04-06 11:16:37 211
原创 一篇短文就能搞定Dubbo SPI 源码及示例
SPI的介绍请参考上篇博客:Dubbo SPI前篇——Java SPI源码及示例,本文主要介绍Dubbo的SPI实现。
2020-04-04 12:31:36 463
原创 Java SPI源码及示例如此简单!
Java SPI 概述SPI(Service Provider Interface)即服务提供接口,是JDK内置的一种服务提供发现机制。简单来说,它就是一种动态替换发现机制。例如:有个接口想在运行时才发现具体的实现类,那么你只需要在程序运行前添加一个实现即可,并把新加的实现描述给JDK即可。此外,在程序的运行过程中,也可以随时对该描述进行修改,完成具体实现的替换。Java提供了很多服务提供者接...
2020-04-03 11:45:39 319
原创 Dubbo入门示例原生API版
有关dubbo的基础、架构等介绍请参考之前博客:Dubbo背景及架构简介XML版(官方推荐)示例请参考:Dubbo入门示例XML版(官方推荐)注解版本示例请参考:Dubbo入门示例注解版1. 创建暴露服务模块(dubbo-demo-api)本模块下没有实际的业务逻辑,主要是定义提供者和消费者公用服务接口/** * 需要暴露出去的服务 * */public interface ...
2020-04-01 10:40:51 385
空空如也
安全的gorm代码工具
2021-10-17
TA创建的收藏夹 TA关注的收藏夹
TA关注的人