content mybatis-plus踩坑日记 mybatis-plus的@TableField注解中的exist属性默认为true,如果数据库中没有对应的字段,会报错。 mybatis-plus的@TableLogic注解修饰的字段不能通过updateById修改。
研读MySQL02之事务原理与锁机制
事务原理 事务特性 隔离级别 并发问题 当前读和快照读 MVCC ReadView undo log redo log 锁机制 行级锁 间隙锁 表级锁 死锁的分析 事务原理 事务特性 ...
研读MySQL01之存储原理与索引实现
存储原理 数据页 插入策略 顺序保证 页内查询 索引实现 聚簇索引 二级索引 联合索引 最左匹配原则 索引区分度 覆盖索引 索引下推 ...
研习RocketMQ03之事务消息与延时消息
事务消息 实现流程 核心原理 缺点 自定义实现 延时消息 缺点 事务消息 实现流程 上图为 RocketMQ 事务消息实现流程,也是基于两阶段提交协议(2PC) HALF消息 MQ 收到一条事务消息后:会将该事务消息的主题和队列信息,转换成,半消息储存起来...
研习RocketMQ02之生产消费与负载均衡
生产与消费 生产方式 消费方式 集群消费 负载均衡 Producer端负载均衡 Consumer端负载均衡 生产与消费 生产方式 producer有三种生产消息的方式 同步(sync):消息投递出去之后,broker同步返回成功或失败 异步(async):...
springboot整合liquibase(强烈推荐)
Liquibase是一个开源数据库模式更改管理解决方案,它使您能够轻松管理数据库更改的修订。Liquibase使参与应用程序发布过程的任何人都可以轻松地: 消除发布数据库时的错误和延迟。 部署和回滚特定版本的更改,而无需知道已部署的内容。 将数据库和应用程序更改一起部署,以便它们始终保持同步。 ps:本人最直观的感觉就是在部署不同环境的时候不用再手动执行初始化sql脚本;...
SpringCloud系列-09之消息总线Bus
RabbitMQ的安装 RabbitMQ的管理 示例代码 注册中心 配置中心 服务提供方 验证 上一节的统一配置中心《SpringCloud系列第08节之配置中心Config》演示了属性热加载 其中提到,每次热加载属性时,都要逐次调用每个应用的 /refresh 接口(或者维护 Git 仓库的 Webhook...
SpringCloud系列-08之配置中心Config
统一配置中心 一些规则 yml的加载顺序 url的映射关系 属性的热加载 示例代码 注册中心 配置中心 服务提供方01 服务提供方02 验证 彩蛋 统一配置中心 微服务架构中,每个微服务的运行,都会读取不同环境的不同配置信息 而Sp...
SpringCloud系列-07之服务网关Zuul
为什么需要网关 网关映射 示例代码 注册中心 服务提供方01 服务提供方02 服务网关01 服务网关02 服务消费方 验证 为什么需要网关 之前的系列文章中演示了,服务提供方和消费方都注册到注册中心,使得消费方能够直接通过 ServiceId 访问服务方 实际情况是:通常...
SpringCloud系列-06之断路器Hystrix
前言 Hystrix的介绍 Hystrix的隔离策略 Hystrix的配置参数 示例代码 注册中心 服务提供方 服务消费方Ribbon的断路 服务消费方Feign的断路 验证 前言 微服务架构中,一般都存在着很多的服务单元 这样就有可能出现一个单元因为网络原因或自身问题而出现故障或延迟,...