代理实例简介
更新时间:2024-08-01
概述
如果您的主实例负载较高,或在发生主动切换类的运维动作时有防闪断需求,可以使用RDS MySQL数据库代理功能,通过读写分离对业务流量进行负载均衡,降低主实例CPU负载压力。
RDS MySQL数据库代理是位于数据库服务端和应用服务端之间的网络代理服务,用于代理应用服务端访问数据库时的所有请求。您可以连接数据库代理访问地址使用数据库代理的各项功能,以简化RDS MySQL数据库实例的连接管理。RDS MySQL数据库代理具有高可用、高性能、可运维、简单易用等特点。
只读实例开通后,您可以创建代理实例,对主实例和只读实例的读流量权重进行设置和管理,赋予主实例弹性的读能力扩展,从而可以增加用户的吞吐量,减轻主实例在面对大量读请求时的压力。
您也可以在自身业务代码中开启只读实例的读流量承担功能,同时将读流量分配到指定的只读实例上。
适用场景
- 事务内有大量请求,导致主实例负载过高的场景。
- 连接数过多导致主实例负载过高的场景。
- 短连接为主的业务。
- 有读写分离需求的业务场景。
- 纯只读和有隔离需求的业务。
实例关系
主实例、只读实例和代理实例三者间关系,如下图所示。您可以在创建主实例后,在主实例的详情页面,为该主实例创建只读实例和代理实例。
- 主实例:承担读写请求。
- 只读实例:承担读请求。
- 代理实例:对主实例和只读实例的读流量权重配比进行设置和管理。
计费标准
- 计费项:与主实例的计费项保持一致。
- 计费方式:支持后付费,暂不支持预付费。
- 计费详情:请参见数据库代理费用说明。
前提条件
- 地域和可用区:与主实例在同一地域,可以在不同的可用区。
- 规格:提供多种规格的代理实例,请根据需求选择。
注意事项
- 实例版本:代理实例当前支持MySQL 5.6、MySQL 5.7 、MySQL 8.0版本的主实例创建;建议使用对应版本的CLI客户端来连接代理实例,如果版本不一致可能导致无法连接。
- 数量限制:代理实例一次仅可购买一个,且一个主实例只能购买一个代理实例。
- 绑定关系:代理实例不能单独存在,创建代理实例须先有主实例;主实例释放时,对应的代理实例会跟随主实例被释放。
- 功能限制:代理实例不支持备份设置以及手动备份。
- 主从延迟强一致读策略:同一个Session,写SQL执行完后,立即执行读SQL,在write_time_interval时间间隔内,读SQL会发往主库。write_time_interval默认为200ms。暂不支持修改。
- 业务对强一致读要求较高,建议开启事务。如果开启事务,SQL请求都会发往主库。
费用说明
详见 数据库代理费用说明。