Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >MySQL数据库读写分离的应用场景和存在问题(续)

MySQL数据库读写分离的应用场景和存在问题(续)

作者头像
飞狗
发布于 2020-03-20 04:22:56
发布于 2020-03-20 04:22:56
1.1K0
举报

上篇文章MySQL数据库读写分离的应用场景和存在问题,存在一些不足之处,在此完善一下。

全同步复制

MySQL的主从库,在全同步复制的情况下是不会出现读写不一致的情况的。

全同步复制
全同步复制

全同步复制(Fully synchronous replication),指当主库执行完一个事务,所有的从库都执行了该事务才返回给客户端。因为需要等待所有从库执行完该事务才能返回,所以全同步复制的性能必然会收到严重的影响。

多主库策略

如果存在读写不一致的情况,可以设置写之后3秒钟,读在主库进行,但是为了降低主库的压力,可以扩展多个主库。

多主库策略
多主库策略

使用缓存也能解决读写不一致的问题吗?

缓存方案
缓存方案

  • 缓存的引入会增加问题的复杂性,因为你需要为缓存增加集群部署,保证其可靠性,如果不能保证缓存的可靠性,那么问题又会回到数据库主从问题,造成问题循环;
  • 缓存可以降低数据库的压力,提供访问效率,但是针对主从不一致问题的解决问题是不可以的。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
YashanDB数据库的读写分离架构详解
如何优化数据库查询速度及提升系统的高可用性成为企业数据管理中的核心挑战之一。在传统数据库架构中,频繁的写操作与大量的读请求对单一实例的性能构成瓶颈,影响业务响应时间及系统的稳定性。读写分离架构作为一种有效的性能增强与资源隔离方案,能够有效缓解此类问题。本文将基于YashanDB数据库的技术架构,深入分析其读写分离的实现原理、核心组件及优势,供数据库管理员和开发人员参考。
数据库砖家
2025/07/10
110
MySQL数据库读写分离的应用场景和存在问题
在应用的用户访问量比较低的时候,一个数据库的读写能力是完全能够胜任的。但是在用户访问量增大的时候,数据库I/O就会成为瓶颈,解决数据库I/O瓶颈可以有两种方式:
飞狗
2020/03/20
1.6K0
大厂都在用的MySQL主从复制、读写分离及高可用方案
随着数据量的增大,读写并发的增加,系统可用性要求的提升,单机 MySQL 出现危机:
JavaEdge
2021/02/20
8.5K0
看完这篇还不懂 MySQL 主从复制,可以回家躺平了~
我们在平时工作中,使用最多的数据库就是 MySQL 了,随着业务的增加,如果单单靠一台服务器的话,负载过重,就容易造成宕机。
浅羽技术
2021/06/22
6260
看完这篇还不懂 MySQL 主从复制,可以回家躺平了~
Mysql 使用读写分离需要注意哪些?
通常我们说的 MySQL 读写分离是指:对于修改操作在主库上执行,而对于查询操作,在从库上执行。主要目的是分担主库的压力。
友儿
2022/09/11
5230
MySQL数据库:读写分离
读写分离解决的是,数据库的写操作,影响了查询的效率,适用于读远大于写的场景。读写分离的实现基础是主从复制,主数据库利用主从复制将自身数据的改变同步到从数据库集群中,然后主数据库负责处理写操作(当然也可以执行读操作),从数据库负责处理读操作,不能执行写操作。并可以根据压力情况,部署多个从数据库提高读操作的速度,减少主数据库的压力,提高系统总体的性能。
全栈程序员站长
2022/06/29
2.1K0
MySQL数据库:读写分离
数据库MySQL-读写分离
数据库读写分离对于大型系统或者访问量很高的互联网应用来说,是必不可少的一个重要功能。
cwl_java
2021/08/30
1.4K0
数据库MySQL-读写分离
mysql读写分离延迟问题_MySQL读写分离后的延迟解决方案
根据上图可以看到QPS:10.73k,实际上真实的并发大量数据到达的时候,我这里最高的QPS是将近15k.而目前单个数据库分片(实例)4CPU8G内存的配置下,最高的性能是7k的QPS。
全栈程序员站长
2022/09/02
1.4K0
数据处理:快乐的烦恼,业务太繁忙?分离读写和主从复制
大型应用服务器在写数据的时候,访问主数据库,主数据库通过主从复制机制将数据更新同步 到从数据库,这样当应用服务器读数据的时候,就可以通过从数据库获得数据。
用户6256742
2024/05/19
1190
数据处理:快乐的烦恼,业务太繁忙?分离读写和主从复制
MySQL主从复制延迟解决方案
前面一篇,我们学习到了MySQL多版本并发控制(MVCC)实现原理,这一篇我们接着学习MySQL主从复制模式下的延迟解决方案。
兔云小新LM
2023/03/16
4.9K0
数据库架构:主备+分库?主从+读写分离?
1、高可用分析:高可用,主库挂了,keepalive(只是一种工具)会自动切换到备库。这个过程对业务层是透明的,无需修改代码或配置。 2、高性能分析:读写都操作主库,很容易产生瓶颈。大部分互联网应用读多写少,读会先成为瓶颈,进而影响写性能。另外,备库只是单纯的备份,资源利用率50%,这点方案二可解决。 3、一致性分析:读写都操作主库,不存在数据一致性问题。 4、扩展性分析:无法通过加从库来扩展读性能,进而提高整体性能。 5、可落地分析:两点影响落地使用。第一,性能一般,这点可以通过建立高效的索引和引入缓存来增加读性能,进而提高性能。这也是通用的方案。第二,扩展性差,这点可以通过分库分表来扩展。
搜云库技术团队
2019/10/17
1.3K0
一文搞懂MySQL主从复制方案、读写分离及高可用
随着数据量的增大,读写并发的增加,系统可用性要求的提升,单机 MySQL 出现危机:
JavaEdge
2021/02/03
1.3K0
一文搞懂MySQL主从复制方案、读写分离及高可用
mycat如何实现读写分离_数据库读写分离中间件
众所周知,随着用户量的增多,数据库操作往往会成为一个系统的瓶颈所在,而且一般的系统“读”的压力远远大于“写”,因此我们可以通过实现数据库的读写分离来提高系统的性能。
全栈程序员站长
2022/11/08
1K0
mycat如何实现读写分离_数据库读写分离中间件
【黄啊码】MySQL入门—16、什么是数据库主从同步?怎么解决主从数据不一致?
大家好!我是黄啊码,MySQL的入门篇已经讲到第15个课程了,今天我们继续讲讲大白篇系列的最后一章——数据库的主同步问题
黄啊码
2022/11/01
9540
【黄啊码】MySQL入门—16、什么是数据库主从同步?怎么解决主从数据不一致?
Keepalived+LVS+MySQL主从复制实现读写分离及高可用
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wzy0623/article/details/81045843
用户1148526
2019/05/25
2.5K0
面试题:你们有没有做 MySQL 读写分离?如何实现 MySQL 的读写分离?
你们有没有做 MySQL 读写分离?如何实现 MySQL 的读写分离?MySQL 主从复制原理的是啥?如何解决 MySQL 主从同步的延时问题?
用户1263954
2019/07/04
4.3K0
mysql读写分离怎么实现(数据库读写分离实现)
大型网站为了解决大量的并发访问,除了在网站实现分布式负载均衡,远远不够。到了数据业务层、数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器来处理如此多的数据库连接操作,数据库必然会崩溃,特别是数据丢失的话,后果更是不堪设想。这时候,我们会考虑如何减少数据库的连接,下面就进入我们今天的主题。
全栈程序员站长
2022/08/01
4.4K0
mysql读写分离怎么实现(数据库读写分离实现)
MySQL 主从复制原理与问题
MySQL 主从复制(Master-Slave Replication)是一种常见的数据库复制技术,它在数据库管理中发挥着重要的作用,有以下几个主要用途:
恋喵大鲤鱼
2024/05/24
2630
MySQL 主从复制原理与问题
数据库MySQL-读写分离
数据库读写分离对于大型系统或者访问量很高的互联网应用来说,是必不可少的一个重要功能。
cwl_java
2021/12/30
1.7K0
数据库MySQL-读写分离
mysql读写分离原理详解(主从复制和读写分离)
主库记录二进制日志。在每次准备提交事务完成数据更新前,主库将数据更新的事件记录到二进制日志中。MySQL会按事务提交的顺序而非每条语句的执行顺序来记录二进制日志。在记录二进制日志后,主库会告诉存储引擎可以提交事务了。下一步,备库将主库的二进制日志复制到其本地的中继日志中。首先,备库会启动一个工作线程,称为I/O线程,I/O线程跟主库建立一个普通的客户端连接,然后在主库启动一个特殊的二进制转储线程,这个二进制转储线程会读取主库上二进制日志中的事件。他不会对事件进行轮询。如果该线程追赶上了主库,他将进入睡眠状态,直到主库发送信号量通知其有新的事件产生时才会被唤醒,备库I/O线程会将接收到的事件记录到中继日志中。
全栈程序员站长
2022/07/25
6440
推荐阅读
相关推荐
YashanDB数据库的读写分离架构详解
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档