自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

qqxhb 资源共享

知识共享、提高效率、不断学习、共同进步。

  • 博客(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

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除