月度归档: 2022 年 7 月

8 篇文章

Dubbo源码(五) – 服务目录
前言 本文基于Dubbo2.6.x版本,中文注释版源码已上传github:xiaoguyu/dubbo 今天,来聊聊Dubbo的服务目录(Directory)。下面是官方文档对服务目录的定义: 服务目录中存储了一些和服务提供者有关的信息,通过服务目录,服务消费者可获取到服务提供者的信息,比如 ip、端口、服务协议等。 服务目录持有Invoker对象…
Dubbo源码(四) – 服务引用(消费者)
前言 本文基于Dubbo2.6.x版本,中文注释版源码已上传github:xiaoguyu/dubbo 上一篇文章,讲了Dubbo的服务导出: Dubbo源码(三) - 服务导出(生产者) 本文,咱们来聊聊Dubbo的服务引用。 本文案例来自Dubbo官方Demo,路径为: dubbo/dubbo-demo/dubbo-demo-consumer/…
Dubbo源码(三) – 服务导出(生产者)
前言 本文基于Dubbo2.6.x版本,中文注释版源码已上传github:xiaoguyu/dubbo 在了解了Dubbo SPI后,我们来了解下Dubbo服务导出的过程。 Dubbo的配置是通过DubboNamespaceHandler读取解析的,其中会将Dubbo服务提供者封装成ServiceBean注入Spring容器中。而服务导出就是在Se…
Dubbo源码(二) – SPI源码
前情提要 假设你已经知道Dubbo SPI的使用方式,不知道的请出门左转: Dubbo源码(一) - SPI使用 Dubbo源码地址: apache/dubbo 本文使用版本:2.6.x 测试Demo 新建SPI测试接口以及实现类 package com.javaedit.spi; import com.alibaba.dubbo.common.U…
Dubbo源码(一) – SPI使用
为什么学SPI Dubbo 的可扩展性是基于 SPI 去实现的,而且Dubbo所有的组件都是通过 SPI 机制加载。 什么是SPI SPI 全称为 (Service Provider Interface) ,是一种服务提供发现机制。可以将服务接口与服务实现分离以达到解耦可拔插、大大提升了程序可扩展性。 说人话: 一个接口有多个实现类,具体使用哪个实…
Sharding-jdbc + Seata + Nacos整合
前置条件 先了解Sharding-jdbc、Seata、Nacos这三样东西各自的作用以及单独使用时的配置。 整合代码已放在github,详细步骤章节请搭配此项目看,欢迎start 思路 如果已经做过Seata + Nacos的整合的,直接看最后的Seata结合Sharding-jdbc章节 详细步骤 Nacos + Seata服务端整合 我之前写…
thumbnail
Sharding-jdbc 5.1.2案例
简介 sharding-jdbc案例,版本5.1.2 springboot + mybatis-plus + sharding-jdbc 项目地址:sharding-jdbc-example 模块说明 read-write 简单的读写分离 db-sharding 简单的不同表在不同库配置 tb_order表使用sharding-jdbc的雪花算法生…
Seata-初体验以及避坑
Seata是什么 这里引用官方解释 Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。 环境搭建 Nacos + Seata Nacos 使用Nacos作为配置中心和注册中心 Seata支持多种配置方式(n…