写点什么

DCS 分布式缓存服务实例类型介绍

  • 2023-01-18
    江苏
  • 本文字数:2401 字

    阅读完需:约 8 分钟

DCS分布式缓存服务实例类型介绍

华为云 DCS 分布式缓存服务,作为一种支持 Key-Value 等多种数据结构的存储系统,可用于缓存、事件发布或订阅、高速队列等典型应用场景。那么 DCS 服务提供哪些实例类型呢?

DCS 实例类型

Redis 单机实例

单机:适用于应用对可靠性要求不高、仅需要缓存临时数据的业务场景。单机实例支持读写高并发,但不做持久化,实例重启后原有缓存数据不会加载。

特点

1.     系统资源消耗低,支持高 QPS

2.     进程监控,故障后自动恢复(30 秒内会重启一个新的进程)

3.     即开即用,数据不做持久化

4.     低成本,适用于开发测试

单机实例示意图

注:VPC 内访问,客户端需要与单机实例处于相同 VPC,并且配置安全组访问规则


DCS Redis 支持的单机实例有:Redis 3.0(已下线)、Redis 4.0 和 Redis 5.0

Redis 主备实例

主备:包含一个主节点,一个或多个备节点,主备节点的数据通过实时复制保持一致,当主节点故障后,备节点自动升级为主节点。同时用户可通过读写分离技术,在主节点上写,从备节点读,从而提升缓存的整体读写性能。DCS 的主备实例在单机实例基础上,增强服务高可用以及数据高可靠性

特点

1.     持久化,确保数据高可靠(主备节点都默认开启数据持久化)

2.     数据同步(通过增量数据同步的方式)

3.     故障后自动切换主节点,服务高可用(备节点在 30 秒内自动完成主备切换)

4.     多种容灾策略(支持将主备实例部署在不同的 AZ 内)

5.     Redis 4.0 和 Redis 5.0 主备实例支持客户端读写分离(分别提供可读写的连接地址(主节点)和只读地址(备节点))

Redis 3.0 主备实例架构设计示意图(已下线)

注:VPC 内访问,客户端需要与主备实例处于相同 VPC,并且配置安全组访问规则


Redis 4.0/5.0/6.0 基础版主备实例架构设计示意图

注:Redis 4.0/5.0/6.0 基础版主备实例使用哨兵模式(Sentinel)进行管理,Sentinel 会一直监控主备节点是否正常运行,当主节点出现故障时,进行主备倒换。Sentinel 对用户不可见。


Redis 6.0 企业版主备实例架构设计示意图

注:VPC 内访问,客户端需要与 Redis 6.0 企业版主备实例处于相同 VPC,并且配置安全组访问规则


DCS Redis 支持的主备实例有:Redis 3.0(已下线)、Redis 4.0、Redis 5.0 和 Redis 6.0。且不支持 Redis 主备升级,比如从 4.0 升级为 5.0 主备实例。

1.1.1  3 Redis Proxy 集群实例

Proxy 集群:在 Cluster 集群的基础上,增加挂载 Proxy 节点和 ELB 节点,通过 ELB 节点实现负载均衡,将不同请求分发到 Proxy 节点,实现客户端高并发请求。每个 Cluster 集群分片是一个双副本的主备实例,当主节点故障后,同一分片中的备节点会升级为主节点来继续提供服务。Redis 3.0/4.0/5.0 Proxy 集群实例不支持读写分离。

Redis 3.0 Proxy 集群因为已下线,不再介绍。

Redis 4.0/5.0 Proxy 集群特点

1.             基于 LVS+Proxy 的高可用集群版本

2.             在创建实例时,支持自定义分片大小(每个分片内存=实例规格/分片数)

3.             ELB 弹性负载均衡服务器,采用集群高可用方式,支持多可用区部署

Redis 4.0/5.0 Proxy 集群实例示意图

注:Redis 4.0/5.0 Proxy 集群实例,当前仅部分区域支持,请以控制台实际上线区域为准。


DCS Redis 支持的 Proxy 集群实例有:Redis 3.0(已下线)、Redis 4.0、Redis 5.0。

Redis Cluster 集群实例

Cluster 集群:通过分片化分区来增加缓存的容量和并发连接数,每个分片是一个主节点和 0 到多个备节点,分片本身对外不可见。分片中主节点故障后,同一分片中备节点会升级为主节点来继续提供服务。用户可通过读写分离技术,在主节点上写,从备节点读,从而提升缓存的整体读写能力。Redis 4.0/5.0 Cluster 集群实例支持从客户端实现读写分离。

特点

1.             Cluster 版 Redis 集群兼容开源 Redis 的 Cluster,基于 smart client 和无中心的设计方案,对服务器进行分片

Cluster 集群无中心架构图

Redis Cluster 的任意节点都可以接收请求,但节点会将请求发送到正确的节点上执行,同时,每一个节点也是主从结构,默认包含一个主节点和一个从节点,由 Redis Cluster 根据选举算法决定节点主从属性。


Cluster 集群数据预分片

Redis Cluster 会预先分配 16384 个 slot,每个 Redis 的 server 存储所有 slot 与 redis server 的映射关系。key 存储在哪个 slot 中,由 Crc16(key) mod 16384 的值决定。


DCS Redis 支持的 Cluster 集群实例有:Redis 4.0、Redis 5.0。

读写分离实例

读写分离:在主备实例的基础上,增加挂载 Proxy 节点和 ELB 节点,通过 ELB 节点实现负载均衡,将不同请求分发到 Proxy 节点,Proxy 节点识别用户读写请求,将请求发送到主节点或备节点,从而实现读写分离。

读写分离主要适用于读高并发、写请求较少的业务场景,解决高并发的性能问题,节约运维成本。

特点

1.             服务端读写分离,默认为从服务端侧实现的读写分离

2.             通过 Proxy 节点识别用户读写请求,如果是写请求,则转发给主节点,如果是读请求,则转发给备节点,不需要用户在客户端做任何配置

读写分离实例示意图

读写分离实例,仅在部分 Region 支持,具体请以控制台显示为准。


Sentinel 集群用来监控主备节点状态,当主节点出现故障或异常时,进行主备倒换,保证服务不中断。读写分离实例,后端是一个主备实例,包含了主和备两个节点。默认开启数据持久化功能,同时保持节点间数据同步。

DCS Redis 支持的读写分离实例有:Redis 4.0、Redis 5.0。

Memcached 单机实例 和 Memcached 主备实例(已停售)

单机:适用于应用对可靠性要求不高、仅需要缓存临时数据的业务场景。单机实例支持读写高并发,但不做持久化,实例重启后原有缓存数据不会加载。

主备:包含一个主节点和一个备节点,主备节点的数据通过实时复制保持一致,备节点对用户不可见且不能直接读写数据,当主节点故障后,备节点自动升级为主节点。

DCS Memcached 已停售,建议使用 Redis 实例。

DCS 的 Memcached 单机实例示意图



DCS 的 Memcached 主备实例示意图



用户头像

还未添加个人签名 2022-09-25 加入

还未添加个人简介

评论

发布
暂无评论
DCS分布式缓存服务实例类型介绍_秃头也爱科技_InfoQ写作社区