高可用只读,让RDS for MySQL更稳定
摘要:业务应用对数据库的数据请求分写请求(增删改)和读请求(查)。当存在大量读请求时,为避免读请求阻塞写请求,数据库会提供只读实例方案。通过主实例+N只读实例的方式,实现读写分离,满足大量的数据库读取需求,增加应用的吞吐量。
业务应用对数据库的数据请求分写请求(增删改)和读请求(查)。当存在大量读请求时,为避免读请求阻塞写请求,数据库会提供只读实例方案。通过主实例+N只读实例的方式,实现读写分离,满足大量的数据库读取需求,增加应用的吞吐量。
对于只读实例,如果采用单机无备节点作备份的方案,当实例出现故障或有重建需求的时候,会出现较长时间的不可用,通常需要客户做业务连接上的调整或是创建新只读实例等繁琐操作。单机只读架构如下所示,一旦单机只读发生故障,则业务中断,直至故障修复实例复位。

RDS for MySQL只读节点稳定性解决方案
为了保证业务的连续性及稳定性,RDS for MySQL在原来单机只读的基础上,推出了“高可用只读”。高可用只读在故障的容错能力、异常的应对能力方面具有比较大的优势。相比较单机只读动辄小时级的中断,高可用只读在故障倒换时,仅有秒级中断。
高可用只读架构图如下,异常发生时(比如数据库异常,虚拟机异常等),HA组件可将主只读节点的VIP(虚拟IP)自动切换到备只读节点上,从而快速恢复业务。

除高可用只读方案外,多只读实例Proxy轮询的方案也有相同效果。即购买多个只读实例,并开启数据库代理(proxy)的方案,在发生异常情况时,数据库代理自动把流量切换到其他正常只读实例,从而避免出现业务中断发生。Proxy方案架构图如下:

单机只读、高可用只读、多只读+ proxy,在应用并发连接数、异常反应、成本方面的对比如下:

以上的多方案给用户提供了灵活的可选择性,用户可以基于业务量、成本、业务运行效率等方面综合评估选择适合自己的方案。这篇文章中将重点介绍下高可用只读,未来我们还会基于proxy做一期介绍,敬请期待。
高可用只读使用办法
高可用只读在页面上的展示
如图所示,replica-86e2为单机只读实例,replica-bb17及replica-b947为高可用只读实例。需要注意的是,高可用只读实例是一组(主、备)实例,其底层会自动实现故障机制响应。


如何购买高可用只读
直接购买高可用只读
1.登录管理控制台。
2. 单击管理控制台左上角的符号,选择区域和项目。
3. 单击页面左上角的符号,选择“数据库 > 云数据库 RDS”。

4. 在“实例管理”页面,选择指定的实例,单击操作列的“更多 > 创建只读”,进入“创建只读”页面。

也可在实例的“基本信息”页面,单击实例拓扑图中,主实例下方的添加按钮,创建只读实例。
5. 在“创建只读”页面,只读模式选择“只读(高可用)”,填选实例相关信息后,单击“立即创建”。

6. 在“规格确认”页面,进行信息确认。如果需要重新选择,单击“上一步”,回到服务选型页面修改基本信息。对于按需计费的实例,信息确认无误后,单击“提交”,下发新增只读实例请求。对于包年/包月的实例,订单确认无误后,单击“去支付”,进入“付款”页面。
7. 高可用只读实例创建成功后,可以对其进行查看和管理。
只读实例转换为高可用只读
除了上述新建只读实例时选择高可用只读模式,RDS for MySQL也支持已有的单机只读升级为高可用只读,操作简单,无需进行老实例回收等操作。
说明:
非高可用只读可以转换为高可用只读实例,但高可用只读不允许转换为非高可用只读实例。
1. 登录管理控制台。
2. 单击控制台左上角的符号,选择区域和项目。
3. 单击页面左上角的符号,选择“数据库 > 云数据库 RDS”,进入RDS信息页面。
4. 在实例列表中,单击实例名称前的符号,单击非高可用只读实例的名称,进入实例的基本信息页面,即进入只读实例的管理页面。

5. 在转高可用页面,确认信息无误后,单击“立即申请”,即可将普通只读实例转换为高可用只读实例。

高可用只读使用注意事项
- 高可用只读支持的磁盘类型有:SSD云盘、本地盘以及极速型SSD;支持的规格类型有:通用型、独享型、鲲鹏通用增强型、x86通用型以及x86独享型。
- 不建议修改高可用只读实例的参数,否则会影响高可用只读的可靠性。
- 高可用只读不允许进行如下操作:修改端口、转换到非高可用只读实例。
- 创建高可用只读或是变更到高可用只读时,需要保证实例所在子网的IP充足。
高可用只读,让RDS for MySQL更稳定的更多相关文章
- 常用数据库高可用和分区解决方案(1) — MySQL篇
在本文中我们将会讨论MySQL.Oracle.MongoDB.Redis以及Oceanbase数据库,大家可能会奇怪为什么看不到有名关系型数据库MSSQL.DB2或者有名NoSQL数据库Hbase.L ...
- 高可用架构篇--MyCat在MySQL主从复制基础上实现读写分离
实战操作可参考:http://www.roncoo.com/course/view/3117ffd4c74b4a51a998f9276740dcfb 一.环境 操作系统:CentOS-6.6-x86_ ...
- 理解 OpenStack 高可用(HA) (6): MySQL HA
本系列会分析OpenStack 的高可用性(HA)概念和解决方案: (1)OpenStack 高可用方案概述 (2)Neutron L3 Agent HA - VRRP (虚拟路由冗余协议) (3)N ...
- 【转】双机高可用、负载均衡、MySQL(读写分离、主从自动切换)架构设计
架构简介 前几天网友来信说帮忙实现这样一个架构:只有两台机器,需要实现其中一台死机之后另一台能接管这台机器的服务,并且在两台机器正常服务时,两台机器都能用上.于是设计了如下的架构.此架构主要是由kee ...
- 双机高可用、负载均衡、MySQL(读写分离、主从自动切换)架构设计
前几天网友来信说帮忙实现这样一个架构:只有两台机器,需要实现其中一台死机之后另一台能接管这台机器的服务,并且在两台机器正常服务时,两台机器都能用上.于是设计了如下的架构. 架构简介 此架构主要是由ke ...
- 【云原生小课堂】高性能、高可用、可扩展的MySQL集群如何组建?
本期[云原生小课堂]将带你入门PXC--公认的MySQL集群优选方案.
- 分布式架构高可用架构篇_08_MyCat在MySQL主从复制基础上实现读写分离
参考: 龙果学院http://www.roncoo.com/share.html?hamc=hLPG8QsaaWVOl2Z76wpJHp3JBbZZF%2Bywm5vEfPp9LbLkAjAnB%2B ...
- mysql高可用架构
高可用 高可用(High Availabiltity) 应用提供持续不间断(可用)的服务的能力 系统高可用性的评价通常用可用率表示 造成不可用的原因 硬件故障(各种) 预期中的系统软硬件维护 ...
- 如何做到MySQL的高可用?
本课时的主题是“MySQL 高可用”,主要内容包含: 什么是高可用性 MySQL 如何提升 MTBF MySQL 如何降低 MTTR 避免单点失效 基础软硬件避免单点 MySQL 高可用架构选型 故障 ...
- 魅族资深DBA:利用MHA构建MySQL高可用平台
龙启东 魅族资深DBA 负责MySQL.Redis.MongoDB以及自动化平台建设 .擅长MySQL高可用方案.SQL性能优化.故障诊断等. 本次分享主要包括以下几方面: 如何利用MHA 改造MHA ...
随机推荐
- 搭建DHCP服务,实现自动分配地址
DHCP实现原理 DHCP定义 DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作.它是一种流行的Clien ...
- ILLA Cloud: 调用 Hugging Face Inference Endpoints,开启大模型世界之门
一个月前,我们 宣布了与 ILLA Cloud 与达成的合作,ILLA Cloud 正式支持集成 Hugging Face Hub 上的 AI 模型库和其他相关功能. 今天,我们为大家带来 ILLA ...
- CSS3-页面布局基础二——Box Model、边距折叠、内联与块标签
一.盒子模型(Box Model) 盒子模型也有人称为框模型,HTML中的多数元素都会在浏览器中生成一个矩形的区域,每个区域包含四个组成部分,从外向内依次是:外边距(Margin).边框(Border ...
- 链式描述线性表(C++实现)
在链式描述中,线性表的元素在内存中的存储位置是随机的,每个元素都有一个明确的指针或链指向下一个元素的位置 chain类 在此使用单向链表实现了线性表,其中最后一个节点的指针域为NULL,即它用单向链接 ...
- Go语言微服务框架go-micro(入门)
Micro用于构建和管理分布式系统,是一个工具集,其中go-micro框架是对分布式系统的高度抽象,提供分布式系统开发的核心库,可插拔的架构,按需使用 简单示例 编写protobuf文件: synta ...
- 我的第一个项目(十二) :分数和生命值的更新(后端增删查改的"改")
好家伙,写后端,这多是一件美逝. 关于这个项目的代码前面的博客有写 我的第一个独立项目 - 随笔分类 - 养肥胖虎 - 博客园 (cnblogs.com) 现在,我们登陆进去了,我开始和敌人战斗,诶 ...
- [OpenCV-Python] 13 颜色空间转换
文章目录 OpenCV-Python:IV OpenCV中的图像处理 13 颜色空间转换 13.1 转换颜色空间 13.2 物体跟踪 13.3 怎样找到要跟踪对象的 HSV 值? OpenCV-Pyt ...
- 关于ObservableCollection的更新与不更新分析
因为最近在WPF项目中,遇到ObservableCollection这个属性的频繁使用,一个一个坑跳过来,今天看到这个贴子 玩转INotifyPropertyChanged和ObservableCol ...
- Latex-beamer的教程
Beamer头文件 Latex是一个非常精确且高效的排版工具,其中的beamer作为一个非常强大的模块承担着PPT任务的排版 首先引入头文件来开始: \documentclass{beamer} %h ...
- 2022-06-14:数组的最大与和。 给你一个长度为 n 的整数数组 nums 和一个整数 numSlots ,满足2 * numSlots >= n 。总共有 numSlots 个篮子,编号为 1
2022-06-14:数组的最大与和. 给你一个长度为 n 的整数数组 nums 和一个整数 numSlots ,满足2 * numSlots >= n .总共有 numSlots 个篮子,编号 ...