随笔分类 - 23-系统解决方案专题
摘要:一. 背景 主流架构一般分库分表都会涉及,追求性能的同时,带来各种痛点。 比如订单id的生成,在分表的情况下,使用int自增,两张分表都自增,直接会导致主键ID的重复,这是错误的,本节主要就是解决分库分表情况下Id的生成规则。 下面先补充一下常见的分库分表中间件: 1. DB层次的,针对DB做代理。
阅读全文
摘要:一. 服务幂等-防重表 1. 方案说明 对于防止数据重复提交,还有一种解决方案就是通过防重表实现。防重表的实现思路也非常简单。首先创建一张表作为防重表(T_PreventSame),同时在该表中建立一个或多个字段的唯一索引作为防重字段(这里将id设置为主键索引),用于保证并发情况下,数据只有一条。在
阅读全文
摘要:一. 幂等性简介 1. 背景 现如今很多系统都会基于分布式或微服务思想完成对系统的架构设计。那么在这一个系统中,就会存在若干个微服务,而且服务间也会产生相互通信调用。那么既然产生了服务调用,就必然会存在服务调用延迟或失败的问题。当出现这种问题,服务端会进行重试等操作或客户端有可能会进行多次点击提交。
阅读全文
摘要:一. 说明 总结各种解决方案 二. 目录 阶段三:解决方案代码实操落地 第一节:连续登录失败锁定 和 利用redis实现滑动窗口限流 第二节:基于Token和Session的实现单服务混合鉴权方案 第三节:基于Redis来实现分布式锁的封装和多种应用 第四节:多种判重方案落地(基于DB、基于缓存、基
阅读全文