首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为啥MySQL master/slave 模式的读写分离会有效提高数据库的性能呢?

为啥MySQL master/slave 模式的读写分离会有效提高数据库的性能呢?

提问于 2017-11-07 07:24:43
回答 1关注 0查看 388

假如果它的实现方式是web server向master写,master与slave同步,然后web server从slave上读。

我不明白这种方式为什么会提高性能?因为master需要与slave同步,这意味着在master所执行的(写)的所有语句,都会在slave被执行一遍,这不是等于slave与master的负荷与读的效率是一致的吗?

回答 1

帅的惊动我国

发布于 2017-11-07 08:22:10

个人感觉可能的原因有如下几点:

1.主从只负责各自的写和读,极大程度的缓解X锁和S锁争用

2.物理服务器增加,负荷增加

3.从库可配置myisam引擎,提升查询性能以及节约系统开销

4.读写分离适用与读远大于写的场景,如果只有一台服务器,当select很多时,update和delete会被这些select访问中的数据堵塞,等待select结束,并发性能不高。 对于写和读比例相近的应用,应该部署双主相互复制。

5.至于你提到的“master所执行的(写)的所有语句,都会在slave被执行一遍”这个只说对一半,从库同步主库的数据和主库直接写还是有区别的,通过主库发送来的binlog恢复数据,但是,最重要区别在于主库向从库发送binlog是异步的,从库恢复数据也是异步的。

和开发者交流更多问题细节吧,去 写回答
相关文章
提高性能,MySQL 读写分离环境搭建(一)
MySQL 读写分离在互联网项目中应该算是一个非常常见的需求了。受困于 Linux 和 MySQL 版本问题,很多人经常会搭建失败,今天松哥就给大伙举一个成功的例子,后面有时间再和大家分享下使用 Docker 搭建环境,那样就 100% 成功了。
江南一点雨
2019/05/15
6140
提高性能,MySQL  读写分离环境搭建(一)
提高性能,MySQL 读写分离环境搭建(二)
上篇文章和大家聊了 CentOS7 安装 MySQL5.7 ,这个大家一般装在虚拟机里边,装好了,把虚拟拷贝一份,这样我们就有两个 MySQL ,就可以开始今天的主从搭建了。
江南一点雨
2019/05/17
5300
mysql数据库读写分离实现_数据库读写分离的原理
读写分离是基于主从复制上面布置的,需要使用Atlas软件,代理服务器上只需要安装mariadb客服端
全栈程序员站长
2022/11/17
1.7K0
mysql数据库读写分离实现_数据库读写分离的原理
MySQL读写分离从库配置:Slave_IO_Running: No 的解决
        进行MySQL读写分离 从库配置时 查看数据库的状态 show slave status; 发现
陶然同学
2023/02/26
5740
MySQL读写分离从库配置:Slave_IO_Running: No 的解决
mysql 读写分离_详解MySQL读写分离
MySQL的主从复制和读写分离两者有着紧密的联系,首先要部署主从复制,只有主从复制完成了才能在此基础上进行数据的读写分离。
全栈程序员站长
2022/08/11
7.6K0
mysql 读写分离_详解MySQL读写分离
mysql读写分离优点_mysql读写分离
在数据库集群架构中,让主库负责处理事务性查询,而从库只负责处理select查询,让两者分工明确达到提高数据库整体读写性能。当然,主数据库另外一个功能就是负责将事务性查询导致的数据变更同步到从库中,也就是写操作。
全栈程序员站长
2022/08/11
2.8K0
mysql读写分离优点_mysql读写分离
mysql读写分离怎么实现(数据库读写分离实现)
大型网站为了解决大量的并发访问,除了在网站实现分布式负载均衡,远远不够。到了数据业务层、数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器来处理如此多的数据库连接操作,数据库必然会崩溃,特别是数据丢失的话,后果更是不堪设想。这时候,我们会考虑如何减少数据库的连接,下面就进入我们今天的主题。
全栈程序员站长
2022/08/01
4.4K0
mysql读写分离怎么实现(数据库读写分离实现)
MySQL 数据库读写分离
基于一台服务器的数据复制,故得名单机热备,主-备 Active-Standby 主-备方式,即指的是一台服务器处于某种业务的激活状态(即Active状态),另一台服务器处于该业务的备用状态(即Standby状态),主数据库数据更新后,备份服务器同步数据只本机
王 瑞
2022/12/28
3.5K0
MySQL数据库:读写分离
读写分离解决的是,数据库的写操作,影响了查询的效率,适用于读远大于写的场景。读写分离的实现基础是主从复制,主数据库利用主从复制将自身数据的改变同步到从数据库集群中,然后主数据库负责处理写操作(当然也可以执行读操作),从数据库负责处理读操作,不能执行写操作。并可以根据压力情况,部署多个从数据库提高读操作的速度,减少主数据库的压力,提高系统总体的性能。
全栈程序员站长
2022/06/29
2K0
MySQL数据库:读写分离
MySQL Master Slave Docker部署例子
用Docker部署基于GTID的MySQL Master-Slave Replication例子。
颇忒脱
2019/07/02
1.5K0
database|How to determine(判断) master in mysql master-slave
I am setting up MySQL Master-slave replication and I am trying to figure out how to handle the failover situation where I promote the slave to master (in the event that the master goes down).
heidsoft
2022/04/18
1.2K0
database|How to determine(判断) master in mysql master-slave
MySQL读写分离的原理
因为实际上大多是互联网公司,一些网站或者是app,其实都是读多写少,所以针对这个情况,就是写请求是一个主库,但是主库挂多个从库,然后从多个从库来读,这样可以提高MySQL的并发。
全栈程序员站长
2022/08/19
3280
数据库MySQL-读写分离
数据库读写分离对于大型系统或者访问量很高的互联网应用来说,是必不可少的一个重要功能。
cwl_java
2021/08/30
1.4K0
数据库MySQL-读写分离
MySQL数据库mycat读写分离[通俗易懂]
mycat读写分离 Mycat的读写分离是建立在Mysq的主从复制的基础上的 修改配置文件 schema.xml
全栈程序员站长
2022/11/04
1.5K0
MySQL数据库mycat读写分离[通俗易懂]
MYSQL数据库读写分离实例
描述:在做PHP读写分离前需要拿到运维部门给好的读写数据库的连接地址,提前定义好数据库的操作类程序,然后编写开发文档让所有的开发同时都统一调用这个类来执行SQL语句;
全栈工程师修炼指南
2022/09/28
5.5K0
MYSQL数据库读写分离实例
数据库MySQL-读写分离
数据库读写分离对于大型系统或者访问量很高的互联网应用来说,是必不可少的一个重要功能。
cwl_java
2021/12/30
1.7K0
数据库MySQL-读写分离
mysql 读写分离 事务_mysql 读写分离(基础篇)
基本的原理是让主数据库处理事务性查询,而从数据库处理SELECT查询。数据库复制被用来把事务性查询导致的变更同步到集群中的从数据库。
全栈程序员站长
2022/09/07
1.9K0
MySQL 读写分离
MySQL Proxy最强大的一项功能是实现“读写分离(Read/Write Splitting)”。基本的原理是让主数据库处理事务性查询,而从数据库处理SELECT查询。数据库复制被用来把事务性查询导致的变更同步到集群中的从数据库。 当然,主服务器也可以提供查询服务。使用读写分离最大的作用无非是环境服务器压力。可以看下这张图:
凯哥Java
2019/06/30
2.6K0
MySQL 读写分离
读写分离,简单地说是把对数据库的读和写操作分开,以对应不同的数据库服务器。主数据库提供写操作,从数据库提供读操作,这样能有效地减轻单台数据库的压力。
用户9615083
2022/12/25
2.4K0
MySQL 读写分离
MySQL读写分离
商品系统、搜索系统这类与用户关联不大的系统,效果特别的好。因为在这些系统中,每个人看到的内容都是一样的,也就是说,对后端服务来说,每个人的查询请求和返回的数据都是一样的。这种情况下,Redis缓存的命中率非常高,近乎于全部的请求都可以命中缓存,相对的,几乎没有多少请求能穿透到MySQL。
JavaEdge
2023/01/08
2.4K0
MySQL读写分离

相似问题

vSphere ESXi主机为什么有Master和Slave之分?

0235

为啥add_face会失败?

085

为啥我的域名备案了还是被阻断呢?

41.5K

为啥用手机版的RDP登陆不了呢?

0248

满1000抵500的代金券为啥不能用呢?

2168
相关问答用户
某公司 | 程序员擅长1个领域
腾讯云TDP | 先锋会员擅长2个领域
新浪微博 | 高级总监擅长4个领域
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档