400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

分库分表太坑啦!-创新互联

最近了解了一下分库分表,看完之后的感悟就是,能不用就不用!!一用就会有超多问题,果然每个技术不仅有优点而且背后都是有超级大的成本的,接下来我就来分享一下分库分表。

在镇安等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站设计制作、网站设计 网站设计制作按需定制,公司网站建设,企业网站建设,品牌网站设计,成都营销网站建设,外贸营销网站建设,镇安网站建设费用合理。数据库分库分表后带来的优点和缺点 分库分表解决的现状问题分库分表带来新的问题

OK!相信大家看完这么多问题,头都快大了叭,咱们先轻松一下,看看啥是分库分表

【垂直分表-垂直分库】【水平分表-水平分库】

好!看完了基础的啥是分库分表,咱要直面狂风暴雨了,首当其冲的就是,当使用了用户的uiserId当成PartitionKey分库分表后,用户想要查看订单列表非常简单,只需要用自己的用户id取模一下,就能找到所有的订单是哪个库,那个表,但是,可怜的商家呢,他完全没法知道所有买了他辛辛苦苦卖出去商品的用户ID,那么他用啥来取模,找到自己卖出去的商品订单呢!

解决方式一【NONOSQL方案】

解决方式二【冗余双写方案】

OK!这两种方案一出来,看起来冗余双写方案会更好一点,但是其实还是要看业务,哈哈哈哈哈,冗余双写的方案没有过多的中间件节点,越少!系统越稳定,而且ES太吃内存啦,要好多钱钱。不过选择具体的技术方案的时候一定要结合业务哦。

方案敲定了,那么随之而来的又是一个大问题,分布式的事务咋解决???

好~在说解决方案之前,老规矩,啥是分布式事务呢,为啥就会有分布式事务的问题嘞?

什么是分布式事务分布式事务下数据最终一致性-CAP的权衡 结果 BASE理论

分布式事务的常⻅解决方案刚性事务模型

在分布式系统中,每一个机器节点能够明确知道自己在进行事务 操作过程中的 结果是成功还是失败,但无法直接获取到其他分 布式节点的操作结果

当一个事务操作跨越多个分布式节点的时候,为了保持事务处理 的 ACID 特性,

需要引入一个“协调者”(TM)来统一调度所有分布式节点的执行 逻辑,这些被调度的分布式节点被称为 AP。

TM 负责调度 AP 的行为,并最终决定这些 AP 是否要把事务 真正进行提交到(RM)

两阶段提交 2PC流程解析

刚性事务总结

柔性事务模型

柔性事务总结

事务消息

事务消息总结

总结

OK!了解完分布式事务,在看看双写的模型,多么妙啊,这里的消息队列不仅可以选择事务消息来处理分布式事务的问题,甚至自己想再让事务锁的粒度小一点的话,可以自己写柔性事务,比如提交订单的时候发一个消息,没有异常之后,状态机推进到最后一个状态,再提交事务。

OMG!我只是解决两个问题,就扯出来这么多,别说还有主键ID如何确保不重复,数据存到数据库里,会不会有些数据库读写特别频繁,有些数据库没啥读写量嘞,分库分表完发现还是不够用,需要再分库分表一次,那么这个时候,如何保障以前的数据不用迁移呢,这些问题还是等以后的我继续补充叭(挖坑.jpg)。

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


当前名称:分库分表太坑啦!-创新互联
浏览地址:http://mbwzsj.com/article/joohi.html

其他资讯

让你的专属顾问为你服务