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

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

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

DCS实例类型

1 Redis单机实例

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

特点

  1. 系统资源消耗低,支持高QPS
  2. 进程监控,故障后自动恢复(30秒内会重启一个新的进程)
  3. 即开即用,数据不做持久化
  4. 低成本,适用于开发测试

单机实例示意图

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

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

2 Redis主备实例

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

特点

  1. 持久化,确保数据高可靠(主备节点都默认开启数据持久化)
  2. 数据同步(通过增量数据同步的方式)
  3. 故障后自动切换主节点,服务高可用(备节点在30秒内自动完成主备切换)
  4. 多种容灾策略(支持将主备实例部署在不同的AZ内)
  5. Redis 4.0和Redis 5.0主备实例支持客户端读写分离(分别提供可读写的连接地址(主节点)和只读地址(备节点))

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

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

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

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

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

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

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

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集群实例,当前仅部分区域支持,请以控制台实际上线区域为准。
image.png

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

4 Redis Cluster集群实例

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

特点

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

Cluster集群无中心架构图

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

Cluster集群数据预分片

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

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

5 读写分离实例

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

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

特点

  1. 服务端读写分离,默认为从服务端侧实现的读写分离
  2. 通过Proxy节点识别用户读写请求,如果是写请求,则转发给主节点,如果是读请求,则转发给备节点,不需要用户在客户端做任何配置

读写分离实例示意图

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

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

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

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

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

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

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

DCS的Memcached单机实例示意图

image.png

DCS的Memcached主备实例示意图

image.png

参考链接

  1. https://support.huaweicloud.com/productdesc-dcs/CacheSingleNode.html
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。