数据库读写分离架构,为什么我不喜欢

RD:单库数据量太大,数据库扛不住了,我要申请一个数据库从库,读写分离。

DBA:数据量多少?

RD:5000w左右。

DBA:读写吞吐量呢?

RD:读QPS约200,写QPS约30左右。

 

上周在公司听到两个技术同学讨论,感觉对读写分离解决什么问题没有弄清楚,有些奔溃。

 

另,对于互联网某些业务场景,并不是很喜欢数据库读写分离架构,一些浅见见文末。

 

一、读写分离

什么是数据库读写分离?

 

答:一主多从,读写分离,主动同步,是一种常见的数据库架构,一般来说:

  • 主库,提供数据库写服务

  • 从库,提供数据库读服务

  • 主从之间,通过某种机制同步数据,例如mysql的binlog

一个组从同步集群通常称为一个“分组”

 

分组架构究竟解决什么问题?

答:大部分互联网业务读多写少,数据库的读往往***成为性能瓶颈,如果希望:

  • 线性提升数据库读性能

  • 通过消除读写锁冲突提升数据库写性能

此时可以使用分组架构。

 

一句话,分组主要解决“数据库读性能瓶颈”问题,在数据库扛不住读的时候,通常读写分离,通过增加从库线性提升系统读性能。

 

二、水平切分

什么是数据库水平切分?

 

答:水平切分,也是一种常见的数据库架构,一般来说:

  • 每个数据库之间没有数据重合,没有类似binlog同步的关联

  • 所有数据并集,组成全部数据

  • 会用算法,来完成数据分割,例如“取模”

一个水平切分集群中的每一个数据库,通常称为一个“分片”

 

水平切分架构究竟解决什么问题?

答:大部分互联网业务数据量很大,单库容量容易成为瓶颈,如果希望:

  • 线性降低单库数据容量

  • 线性提升数据库写性能

此时可以使用水平切分架构。

 

一句话总结,水平切分主要解决“数据库数据量大”问题,在数据库容量扛不住的时候,通常水平切分。

 

三、为什么不喜欢读写分离

对于互联网大数据量,高并发量,高可用要求高,一致性要求高,前端面向用户的业务场景,如果数据库读写分离:

  • 数据库连接池需要区分:读连接池,写连接池

  • 如果要保证读高可用,读连接池要实现故障自动转移

  • 有潜在的主库从库一致性问题

 

  • 如果面临的是“读性能瓶颈”问题,增加缓存可能来得更直接,更容易一点

  • 关于成本,从库的成本比缓存高不少

  • 对于云上的架构,以阿里云为例,主库提供高可用服务,从库不提供高可用服务

 

所以,上述业务场景下,楼主建议使用缓存架构来加强系统读性能,替代数据库主从分离架构。

 

当然,使用缓存架构的潜在问题:如果缓存挂了,流量全部压到数据库上,数据库会雪崩。不过幸好,云上的缓存一般都提供高可用的服务。

 

四、总结

  • 读写分离,解决“数据库读性能瓶颈”问题

  • 水平切分,解决“数据库数据量大”问题

  • 对于互联网大数据量,高并发量,高可用要求高,一致性要求高,前端面向用户的业务场景,微服务缓存架构,可能比数据库读写分离架构更合适

 

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/261550.html<

(0)
运维的头像运维
上一篇2025-05-03 16:47
下一篇 2025-05-03 16:49

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注