首页 数据库 mysql教程 mysql binlog限流问题总结_MySQL

mysql binlog限流问题总结_MySQL

Jun 01, 2016 pm 01:13 PM
影响 新建 流量 网络

问题背景:

 新建备库级联到主库会将主库上大量的binlog拉到本地保存为relaylog,这个阶段会导致主库网络流量非常大,从而引发主库的查询更新等受到影响。

 解决思路:

 1. 在备库拉主库binlog的IO线程上做限流:每拉一定数据量M的binlog则sleep时间N。

 这个测试效果比较明显,但存在如下几个问题:

 1) 参数比较难控制 需要DBA根据实际场景调整来获得预期的网络流量,这个过程可能需要多次尝试才可能获取到预期行为
 2) 存在抖动 在sleep时刻明显能观察到不均匀的网络流量

 2. 在socket的选型上做文章

 1) 对主备库的IO线程使用的连接都设置socket属性。
 2) 灵感来自facebook mysql中引入的rpl_send_buffer_size参数:对主库的dump线程增加SNDBUF参数控制以优化主库发送的速度。
   NET* net = &thd->net;
+  if (rpl_send_buffer_size &&
+      (setsockopt(net->vio->mysql_socket.fd, SOL_SOCKET, SO_SNDBUF,
+                  &rpl_send_buffer_size, sizeof(rpl_send_buffer_size)) == -1 ||
+       setsockopt(net->vio->mysql_socket.fd, IPPROTO_TCP, TCP_WINDOW_CLAMP,
+                  &rpl_send_buffer_size, sizeof(rpl_send_buffer_size)) == -1))
+    sql_print_warning(“Failed to set SO_SNDBUF with (error: %s).”,
+                      strerror(errno));
+
完整补丁参考 https://github.com/facebook/mysql-5.6/commit/d3b0c7814090bded6563fee7d46d2ae41ed32a60
 其中,主库的dump线程连接描述符NET的设置有两点:

 a. SOL_SOCKET级别对应的应用层所设置的缓冲区大小
 b. IPPROTO_TCP级别对应的传输层设置的拥塞窗口大小

 stackovreflow上有人遇到利用setsocketopt设置SOL_SOCKET级别的SO_RCVBUF但无效果的问题。解决方法为同时设置SOL_SOCKET级别的TCP_WINDOW_CLAMP。(注:TCP_WINDOW_CLAMP应该属于IPPROTO_TCP级别)

http://stackoverflow.com/questions/2223825/setting-tcp-receive-window-in-c-and-working-with-tcpdump-in-linux
http://linux.die.net/man/7/tcp

 3) 至少设置备库才有效,从2048到UINT_MAX(2*1024*1024),检测主库网卡流出/备库网卡流入从4.8M 到 15.4M。
 4) 需要注意的是,此参数是在连接建立之前设置,更改此参数需要重启主备之间的复制。

 从运维角度看,动态设置某个比较接近‘0’的时间,但主备复制延时低于此值后,复制不再受此限流的影响。

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系统,解释
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆树的耳语 - 如何解锁抓钩
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1671
14
CakePHP 教程
1428
52
Laravel 教程
1329
25
PHP教程
1276
29
C# 教程
1256
24
WLAN扩展模块已停止[修复] WLAN扩展模块已停止[修复] Feb 19, 2024 pm 02:18 PM

如果您的Windows计算机上的WLAN扩展模块出现问题,可能会导致您与互联网断开连接。这种情况常常让人感到困扰,但幸运的是,本文提供了一些简单的建议,可以帮助您解决这个问题,让您的无线连接重新正常运行。修复WLAN扩展模块已停止如果您的Windows计算机上的WLAN可扩展性模块已停止工作,请按照以下建议进行修复:运行网络和Internet故障排除程序禁用并重新启用无线网络连接重新启动WLAN自动配置服务修改电源选项修改高级电源设置重新安装网络适配器驱动程序运行一些网络命令现在,让我们来详细看

win11 DNS服务器错误如何解决 win11 DNS服务器错误如何解决 Jan 10, 2024 pm 09:02 PM

我们在连接网络时需要使用正确的dns才可以上网。同理,如果我们使用了错误的dns设置就会提示dns服务器错误了,这时候我们可以尝试在网络设置中选择自动获取dns来解决,下面就一起来看下具体解决方法吧。win11网络dns服务器错误怎么办方法一:重新设置DNS1、首先,点击任务栏中的开始进入,在其中找到并点开“设置”图标按钮。2、然后点击左侧栏中的“网络&Internet”选项命令。3、然后在右侧找到“以太网”选项,点击进入。4、之后,点击DNS服务器分配中的“编辑”,最后将DNS设置为“自动(D

win10不能上网右下角显示地球怎么办 win10网络成地球无法上网的多种解决办法 win10不能上网右下角显示地球怎么办 win10网络成地球无法上网的多种解决办法 Feb 29, 2024 am 09:52 AM

这篇文章将介绍Win10系统网络显示地球标志但无法上网的解决方法。文章将提供详细的操作步骤,帮助读者解决Win10网络显示地球无法上网的问题。方法一:直接重启先检查一下网线是否没插好,宽带是否欠费,路由器或光猫可能会卡死,这时需重启路由器或光猫。假如当前电脑没有重要的事宜在操作,能直接重启电脑,大部分的小问题能通过重启电脑来快速解决。假如确定宽带没有欠费,网络正常,那便是另一回事。方法二:1、按【Win】键,或点击左下角的【开始菜单】,在打开的菜单项中,点击电源按钮上方的齿轮状图标,这个就是【设

VBOX_E_OBJECT_NOT_FOUND(0x80bb0001)VirtualBox错误 VBOX_E_OBJECT_NOT_FOUND(0x80bb0001)VirtualBox错误 Mar 24, 2024 am 09:51 AM

在VirtualBox中尝试打开磁盘映像时,可能会遇到错误提示,指示硬盘无法注册。这种情况通常发生在您尝试打开的VM磁盘映像文件与另一个虚拟磁盘映像文件具有相同的UUID时。在这种情况下,VirtualBox会显示错误代码VBOX_E_OBJECT_NOT_FOUND(0x80bb0001)。如果您遇到这个错误,不必担心,有一些解决方法可以尝试。首先,您可以尝试使用VirtualBox的命令行工具来更改磁盘映像文件的UUID,这样可以避免冲突。您可以运行命令`VBoxManageinternal

使用飞行模式接收电话的效果如何 使用飞行模式接收电话的效果如何 Feb 20, 2024 am 10:07 AM

飞行模式别人打电话会怎么样手机已经成为人们生活中必不可少的工具之一,它不仅仅是通信工具,还是娱乐、学习、工作等多种功能的集合体。随着手机功能的不断升级和改进,人们对于手机的依赖性也越来越高。在飞行模式出现后,人们可以更方便地在飞行中使用手机。但是,有人担心在飞行模式下别人打电话的情况会对手机或者使用者产生什么样的影响呢?本文将从几个方面来进行分析和讨论。首先

ICLR'24无图新思路!LaneSegNet:基于车道分段感知的地图学习 ICLR'24无图新思路!LaneSegNet:基于车道分段感知的地图学习 Jan 19, 2024 am 11:12 AM

写在前面&笔者的个人理解地图作为自动驾驶系统下游应用的关键信息,通常以车道或中心线表示。然而,现有的地图学习文献主要集中在检测基于几何的车道或感知中心线的拓扑关系。这两种方法都忽略了车道线与中心线的内在关系,即车道线绑定中心线。虽然在一个模型中简单地预测两种类型的车道在学习目标中是互斥的,但本文提出将lanesegment作为一种无缝结合几何和拓扑信息的新表示,因此提出了LaneSegNet。这是第一个生成lanesegment以获得道路结构完整表示的端到端建图网络。LaneSegNet有两个关

检查网络连接:lol无法连接服务器 检查网络连接:lol无法连接服务器 Feb 19, 2024 pm 12:10 PM

LOL无法连接服务器请检查网络近年来,网络游戏已经成为了很多人的日常娱乐活动。其中,英雄联盟(LOL)作为一款非常受欢迎的多人在线游戏,吸引了亿万玩家的参与和爱好。然而,有时候我们在玩LOL的时候会遇到“无法连接服务器请检查网络”的错误提示,这无疑给玩家们带来了一些困扰。接下来,我们将探讨一下该错误的出现原因和解决方法。首先,LOL无法连接服务器的问题可能是

网络连不上wifi怎么回事 网络连不上wifi怎么回事 Apr 03, 2024 pm 12:11 PM

1、检查wifi密码:确保自己输入的wifi密码是正确的,注意区分大小写。2、确认wifi是否正常工作:检查wifi路由器是否正常运行,可将其他设备连接至同一路由器,以确定问题是否出在设备上。3、重启设备和路由器:有时候,设备或路由器出现故障或网络问题,重启设备和路由器可能会解决问题。4、检查设备设置:确保设备无线功能处于开启状态,并且未将wifi功能禁用。

See all articles