每秒100w+请求,如何破解秒杀业务的数据库瓶颈?

随着业务增长,数据库成为性能瓶颈,文章探讨了分库分表解决策略,包括连接管理、事务一致性、跨库查询、排序与主键生成等问题。强调了数据库精通是程序员的核心能力,并推荐了《数据库实战32讲》课程,旨在提升架构师级的数据库设计与实践技能。
摘要由CSDN通过智能技术生成

我们知道大多数公司都是从单体应用开始的,即便现在抗住双十一流量洪峰的淘宝,它最早用的也是:

LAMP(Linux+Apache+MySQL+PHP)。

对于任何一个刚起步的项目来说,选择简单快速的方式来实现无可厚非。

一旦架构开始变得复杂往往是因为业务的体量越来越大,用户量以及流量开始增加,服务器的性能就会受到挑战,架构演进就成为了我们不得不的选择。

随着我们手里的数据越来越多,SQL 操作越来越慢,数据库就会成为瓶颈。这个时候我想你一定会想到分库分表,从而突破网络IO、硬件资源、连接数的限制,然后胸有成竹地拍拍胸脯说:“只要我数据库能无限扩容不就万事大吉了!”

图片

先别太兴奋,你需要想一想,分库分表可能带来的棘手问题,比如:

  • 数据库连接过多,如果每个RPC都要连接所有的库,扩容则会导致连接数增加,需要考虑单元化;

  • 事务一致性问题,解决方案包括2PC、3PC、TCC、消息事务、最大努力通知等;

  • 跨库关联查询问题,我们可以考虑的方案包括全局表、字段冗余、系统层组装、ER表;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值