
# Redis实例是否支持读写分离？
Redis实例支持读写分离的情况如下表所示：
| 实例类型                | 是否支持读写分离                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|
| 读写分离实例              | 支持。 说明： 读写分离功能，推荐使用**读写分离实例**，无需在客户端做任何配置。                                                                                                                                                                                                                                                                 |
| Redis Proxy集群实例     | Proxy集群实例默认关闭读写分离，支持通过修改配置参数backend-master-only，开启Proxy集群实例读写分离。 - 默认关闭读写分离时，读、写请求默认只分配到Proxy集群的主节点。  - 开启读写分离后，写请求分配到主节点，读请求默认会分配到从节点，也支持配置读请求平均分配到Proxy集群的主节点和备节点。   |
| Redis Cluster集群实例   | 支持从客户端实现读写分离，需要在客户端做配置，参考[配置说明]。                                                                                                                                                                                                                                                                                                   |
| Redis 4.0及以上基础版主备实例 | 支持从客户端实现读写分离，需要在客户端增加用户读写请求判断。                                                                                                                                                                                                                                                                                                                                              |
| 其他版本及实例类型           | 不支持。                                                                                                                                                                                                                                                                                                                                                                        |
   
 #### 配置说明
- **Redis Proxy集群实例** ，支持通过将参数backend-master-only默认值yes修改为no，开启Proxy集群实例读写分离。修改配置参数的方式请参考[配置实例参数](https://support.huaweicloud.com/usermanual-dcs/dcs-ug-0312024.html)。
- **Redis Cluster集群实例** ，使用**cluster nodes** 查询所有主备节点，客户端连接备节点，并在节点上做配置，开启备节点只读访问，从而实现读写分离。
  查询集群节点命令如下：
  ```
  redis-cli -h {redis_address} -p {redis_port} -a {redis_password} cluster nodes
  ```
  从节点配置只读模式，请参考[READONLY命令](https://redis.io/commands/readonly/)。
  
- **Redis 4.0及以上基础版版本主备实例**，在控制台的实例详情信息页面，域名区分可读写域名和只读域名，分别对应主节点和备节点，在客户端增加用户读写请求判断，如果是写请求，则将请求发送给读写域名，如果是读请求，则将请求发送给只读域名。
- **读写分离实例**，默认为从服务端侧实现的读写分离，通过Proxy节点识别用户读写请求，如果是写请求，则转发给主节点，如果是读请求，则转发给备节点，不需要用户在客户端做任何配置。
 
