前文我们聊了《UCloud优刻得云内存存储Redis产品版本及功能说明》,从产品版本解析云内存Redis功能,本文从产品架构方面解析UCloud优刻得云内存存储主备版Redis架构与分布式版Redis架构,并比较二者之间的异同。
UCloud云内存产品促销参见《UCloud年度大促云内存Redis主备版1G实例容量首年260元》
主备版Redis架构
主备版Redis采用主备(Master-Replica)架构,主节点提供日常服务访问,备节点保证高可用,当主节点发生故障,系统会自动切换至备节点,保证业务平稳运行。
特性
服务高可用
采用双机主备架构,主节点对外提供访问,用户可通过Redis命令行和通用客户端进行数据的增删改查操作。当主节点出现故障,会自动进行主备切换,保证业务平稳运行。
数据高可靠
默认开启数据持久化功能,数据全部落盘。支持数据备份功能,用户可以从备份创建实例恢复,有效地解决数据误操作等问题。并支持跨可用区部署主备节点,具备跨可用区容灾能力。
兼容性
主备版Redis支持redis4.0/5.0版本,兼容 Redis 协议命令。自建的Redis可以平滑迁移至主备版Redis。
分布式版Redis架构
分布式版Redis采用Redis分片+Proxy架构,Redis分片基于主备版Redis资源池,轻松突破Redis自身单线程瓶颈,支持在线扩容可极大满足对于Redis大容量或高性能的业务需求。
分布式Redis架构-Redis分片
分布式版Redis默认提供一个访问ip,用户访问该ip进行正常的Redis访问及数据操作。
Redis分片:每个分片服务器均是主备版redis高可用架构,主节点故障之后,系统会自动进行主备切换保证服务高可用。单个分片最小容量4G,默认会对单个分片的内存使用率设置默认告警,当某个分片内存使用率达到告警阈值后会触发告警;在实际生产环境中,由于单个分片一旦内存使用量已满将会导致部分数据无法写入,因此,如果出现某个分片负载较高或内存使用率较高时,可以单独对该分片进行扩容操作。另外,建议用户使用中尽量使各个分片负载比较均衡,避免出现某个分片非常空闲造成资源浪费、而另外某个分片则负载严重。
分布式Redis架构–代理
Proxy代理:双主节点配置,分布式版架构中会有多个Proxy组成,系统会自动对其实现负载均衡及故障转移。
主备版与分布式版对比
容量
主备版Redis支持1,2,4,6,8,12,16,24,32的容量规格(对于32G以上的需求,暂时可以提交非标需求),
分布式Redis支持16-2000G的容量需求
性能
单次请求延时:单个命令单次请求的延迟,主备版Redis相对较低;
批量请求效率:大批量mget,mset,del批量命令操作,较大pipeline操作,主备版Redis效率较高;
集合运算效率:类似SDIFF,SINTER,SUNION等,集合交集,差集,并集运算命令,主备版Redis效率较高;
大包命令效率:单个KV请求数据量较大时,主备版Redis效率较高;
并发性能: QPS超过接近或者超过10W, 分布式Redis可以满足需求;
功能
主备版Redis支持所有数据操作命令,分布式Redis限制了部分命令(详见FAQ说明);
主备版Redis支持备份及下载;
主备版Redis自定义配置;
主备版Redis支持多db;
主备版Redis支持多版本,分布式Redis基于Redis 2.8版本,支持相关命令。