云数据库 Tair(兼容 Redis)提供读写分离功能。开启后,您无需修改业务代码,实例能够自动识别读、写请求并进行对应转发,满足高并发读写的业务场景。
背景信息
读写分离功能采用星型复制架构,所有只读节点均从主节点同步数据,数据同步延迟低。所有只读节点均具备容灾功能,可作为备节点进行数据备份,您可以按需选择只读节点数量(范围为1~9),更多信息请参见读写分离版。
前提条件
部署模式为云原生。
实例为Redis开源版或Tair(企业版)内存型、持久内存型。
实例规格1 GB及以上。
注意事项
本操作会造成实例出现秒级的连接闪断,同时会将在后台触发数据迁移,请务必确保在操作过程中实例的写入流量避免过高,请在业务低峰期执行该操作并确保应用具备重连机制。
操作步骤
访问实例列表,在上方选择地域,然后单击目标实例ID。
在左侧导航栏,单击节点管理。
打开读写分离开关。
在弹出的面板中,确认实例配置信息以及订单费用,单击去支付。
说明新创建的只读节点规格与主节点(源实例)一致。
根据提示完成支付流程。
支付成功后,实例开始变配(实例状态改为变配中)。请等待1~5分钟,实例状态改为运行中即表示变配完成,您可以在实例详情页中查看进展。
自定义读写分离副本数
在使用过程中,您可以根据业务动态需求灵活调整读写分离架构实例的只读节点数:在节点管理页面,单击操作列下的修改,调整只读节点数量,范围为1~9个。
常见问题
无法开通读写分离,报错为 ECS cluster DbInstance does not support SecurityGroup
说明:读写分离架构的云原生实例,暂不支持安全组功能。
解决办法:排查实例是否添加了安全组。查看和设置安全组的方法,请参见设置IP白名单。
如果实例已添加安全组,请您将对应的IP地址添加至实例白名单中,并移除实例的安全组,再开启读写分离。
双可用区实例在开启读写分离后为什么会出现两个连接地址?
说明:双可用区实例在开启读写分离后,实例会分别提供主、备可用区的连接地址,两个连接地址均支持读、写操作。写请求均会路由到主可用区的主节点中;每个可用区的读请求会路由到本可用区的主节点或只读节点中,实现就近访问。更多信息请参见标准版(读写分离)、集群版(读写分离)。