这次单独调查一下主从延迟的时间。这里说的主从延迟,并不是指“从库更新性能跟不上主库”, 而是“一个命令从主库更新完成到从库更新完成的延迟时间。
基本流程:
对于每一个连上来的从库,主库都有一个client线程与之对应。
先看主从的基本数据流
1、客户端SQL更新命令
2、主库执行
3、主库写binlog
4、主库client线程读binlog发送给从库的io线程
5、从库io线程写盘(relay-log)
6、从库sql线程读relay-log
7、执行更新。
这里有涉及到两个写盘,主库binlog和从库的relaylog(3、5)。不过不用担心不停扫描文件造成的延迟,因为读文件的线程是在同一个进程内,每次写完都会广播,所以虽然看上去是异步,实际上延迟并不大。
我们主要考察步骤2完成瞬间到7开始执行之前的延时。
实验方法――一级主从
实际应用中主从库机器应该是分开的,这里也讨论这种情况(同机房,不同机器)
可以想象延迟很小,因此在不同机器上输出时间还需要考虑机器之间的时间同步。设计流程如下:
1、机器A上的MySQL S设置为机器B上的MySQL M的从库
2、在A上有一个简单客户端C,向M发起一个insert操作,这个操作会被同步到S。
3、在C执行mysql_real_query返回时输出当前系统微秒时间 t1
4、在S上的引擎回调接口write_row入口处输出当前系统微秒时间 t2
则 t2- t1的值是我们需要的结果。
实验方法――二级主从
项目中担心多个从库连接一个主库,影响主库性能,因此还要在实验二级级联主从的延迟时间。
这种结构下,在第一级从库上增加了一次写盘转发 (sql执行更新后写本地binlog),
实验结果
一级主从 50~100 us
二级主从 1.1~1.2 ms
- 大小: 13.9 KB
- 大小: 23.7 KB
分享到:
相关推荐
淘宝资深工程师丁奇在2009年的分享中详细介绍了MySQL主从同步的原理、配置、优化以及在实际应用中遇到的问题和解决方案。 首先,MySQL主从同步的基本概念指的是在一个数据库实例(主库)上对数据进行修改操作后,...
MySQL主从同步是一种常见的数据库高可用性和数据冗余策略,它允许数据在多个服务器之间实时复制,确保即使在一台服务器故障时,数据仍然可以被访问。以下是对搭建、修改和优化MySQL主从同步过程的详细解释: 1. **...
MySQL主从同步是一种数据库复制技术,它允许数据从一个MySQL服务器(称为“主服务器”)实时复制到另一个或多个服务器(称为“从服务器”)。这种配置对于数据备份、负载均衡和高可用性至关重要。在Java开发中,了解...
MySQL主从同步是一种数据库复制技术,它允许数据从一个服务器(主服务器)自动复制到一个或多个其他服务器(从服务器)。这种同步机制提高了系统的可扩展性、数据安全性以及提供了灾难恢复的可能性。 ### 主从同步...
MySQL主从半同步复制是介于异步复制和全同步复制之间的一种模式,它提供了更好的数据安全性和一致性,同时也尽可能地减少了性能损失。 首先,我们来了解一下什么是MySQL半同步复制。在半同步复制模式下,主服务器在...
### MySQL主从安装部署知识点详解 #### 一、MySQL主从安装部署概述 MySQL 主从复制是一种常见的数据备份和负载均衡技术,在多个服务器之间同步数据。通过设置一个或多个从服务器来复制主服务器上的数据变更操作,...
MySQL主从同步是数据库架构中常见的一种高可用性解决方案。它可以实现数据的实时备份,分担主库读写操作压力,并提供数据的热备份。在Windows操作系统下配置MySQL主从同步涉及多个步骤,以下将详细解读配置的原理、...
MySQL主从复制是指在一个MySQL集群中,数据在主服务器上写入后,会被自动复制到一个或多个从服务器上。这种复制模式分为三个主要阶段:日志记录、网络传输和应用更改。 1. **日志记录**:在主服务器上,所有事务在...
MySQL 主从同步是一种常见的数据库高可用性和负载均衡解决方案,它允许数据从一个主数据库(Master)实时复制到一个或多个从数据库(Slave)。在这种配置下,所有写操作都在主库上执行,然后由从库自动并异步地复制...
### MySQL 主从同步实战 #### 一、MySQL主从复制简介 MySQL的主从复制机制是一种数据冗余和高...通过以上步骤,我们不仅实现了ServA和ServB之间的MySQL主从同步,还确保了系统在面对故障时具备更高的可靠性和可用性。
#### 一、为什么使用MySQL主从配置? 在现代数据库系统中,随着业务规模的不断扩大和用户数量的激增,单一数据库服务器往往难以满足高性能和高可用性的需求。为了提高系统的整体性能和可靠性,采用MySQL主从配置...
### MySQL主从复制部署实施知识点 #### 一、MySQL主从复制概述 MySQL主从复制是一种数据复制技术,它能够实现在多个服务器之间复制数据。通常包括一个主服务器(Master)和一个或多个从服务器(Slave)。在主从复制...
### MySQL主从同步详解 #### 一、MySQL主从同步概念与原理 MySQL 主从同步是一种数据复制技术,主要用于数据库的高可用性、负载均衡以及数据备份等方面。它通过一个或多个从服务器(slave)复制主服务器(master)...
MySQL主从同步是一种数据复制机制,它允许一个或多个从服务器(slaves)从主服务器(master)获取并应用数据更改。这种机制确保了数据在多个服务器间的实时一致性,同时也提供了数据备份和容灾恢复的能力。 **主从...
### MySQL主从同步镜像备份知识点详解 #### 一、MySQL主从同步基本概念 - **主从复制机制**:MySQL中的主从复制是一种数据复制技术,它将一个MySQL服务器(主服务器)的数据异步复制到一个或多个其他MySQL服务器...
### MySQL主从同步镜像备份知识点详解 #### 一、MySQL主从同步基本概念 - **主从复制机制**:MySQL中的主从复制是一种数据复制技术,它将一个数据库(主服务器)的数据复制到另一个或多个数据库(从服务器),以此...