为什么要分库分表 分库分表的设计 带来的问题 扩容 分布式事务 多个路由字段怎么设置 关于分库分表最全的一篇文章 这里介绍设计分库分表框架时应该考虑的设计要点,并给出相应的解决方案。 一、整体的切分方式 简单来说,数据的切分就是通过某种特定的条件,将我们存放在同一个数据库中的数据分散存放到多个数据库 ...
分类:
数据库 时间:
2019-07-11 23:18:32
阅读次数:
155
分布式事务(1) 2PC和3PC理论 分布式事物基本理论 :基本遵循CPA理论,采用柔性事物特征,软状态或者最终一致性特点保证分布式事物一致性问题。 分布式事物常见解决方案 : 1. 2PC两段提交协议 2. 3PC三段提交协议(弥补两端提交协议缺点) 3. TCC或者GTS(阿里) 4. 消息中间 ...
分类:
其他好文 时间:
2019-07-10 23:15:56
阅读次数:
222
解耦神器:MQ MQ是分布式架构中的解耦神器,应用非常普遍。有些分布式事务也是利用MQ来做的。由于其高吞吐量,在一些业务比较复杂的情况,可以先做基本的数据验证,然后将数据放入MQ,由消费者异步去处理后续的复杂业务逻辑,这样可以大大提高请求响应速度,提升用户体验。如果消费者业务处理比较复杂,也可以独立 ...
分类:
其他好文 时间:
2019-07-09 15:13:17
阅读次数:
91
本文在个人技术博客不同步发布,详情可用力戳亦可扫描屏幕右侧二维码关注个人公众号,公众号内有个人联系方式,等你来撩... 前两天发了工资,第一反应是想着要给远方的女朋友一点惊喜!于是打开了平安银行的APP给女朋友转点钱!填写上对方招商银行卡的卡号、开户名,一键转账!搞定!在我点击的那瞬间,就收到了ap ...
分类:
其他好文 时间:
2019-07-05 20:47:58
阅读次数:
161
3.切分 水平切分 水平切分又称为 sharding ,它是将同一个表的记录拆分到多个结构相同的表中。当一个表的数据不断的增加的时候,sharding是必然的选择,它可以 将数据分布到集群的不同节点上,从而缓存单个数据库的压力 。 垂直切分 垂直切分是 ...
分类:
数据库 时间:
2019-07-04 17:42:04
阅读次数:
131
EasyTransaction是一个全功能的分布式事务框架,以下特性摘抄自其首页:https://github.com/QNJR GROUP/EasyTransaction 一个框架包含多种事务形态,一个框架搞定所有类型的事务 多种事务形态可混合使用 高性能,大多数业务系统瓶颈在业务数据库,若不启用 ...
分类:
其他好文 时间:
2019-07-01 01:01:06
阅读次数:
117
关于本片随笔 笔者在阅读知乎老刘的文章后有感而写,本文按照自己的观点论述了分布式事务 侵删 本地事务 ACID特性 A Atomicity 原子性 C Consistency 一致性 I Isolation 隔离性 D Durability 持久性 一致性是最基本的特性,其他三个特性都是为了保持一致 ...
分类:
其他好文 时间:
2019-06-25 15:00:29
阅读次数:
115
本文不对分布式事务原理进行探索,而是通过一个案例来说明如何使用分布式事务 案例需求:创建2个基于springCloud的微服务,分别访问不同的数据库;然后创建一个整合服务,调用微服务实现数据的保存到2个不同的数据库,要求采用分布式事务,要么都成功,要么都失败。案例拓扑图: 实现步骤:1 分布式事务处 ...
分类:
编程语言 时间:
2019-06-23 14:21:18
阅读次数:
93
在微服务如火如荼的情况下,越来越多的项目开始尝试改造成微服务架构,微服务即带来了项目开发的方便性,又提高了运维难度以及网络不可靠的概率. 在说微服务的优缺点时,有对比才会更加明显,首先说一下单体式结构 单体式架构 在单体式架构中,系统通常采用分层架构模式(MVC),持久化层、表示层,业务逻辑层。架构 ...
分类:
编程语言 时间:
2019-06-23 14:20:56
阅读次数:
143
一、RabbitMQ解决分布式事务思路: 案例: 经典案例,以目前流行点外卖的案例,用户下单后,调用订单服务,让后订单服务调用派单系统通知送外卖人员送单,这时候订单系统与派单系统采用MQ异步通讯。 二、RabbitMQ解决分布式事务原理:采用最终一致性原理。 需要保证以下三要素 1、确认生产者一定要 ...
分类:
其他好文 时间:
2019-06-23 11:37:46
阅读次数:
137