检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
使用memtier_benchmark测试Redis性能 Memtier_benchmark是Redis Labs推出的一款命令行工具,它能够产生多种流量模式,对Redis实例进行基准测试。该工具提供了丰富的自定义选项和报表功能,通过命令行界面就能够轻松地使用。
采集Redis运行日志 功能介绍 采集Redis运行日志。 调用方法 请参见如何调用API。
父主题: Redis使用
通过redis-rdb-tools工具找出大Key redis-rdb-tools是分析Redis RDB快照文件的开源工具。可以根据需求自定义分析Redis实例中所有Key的内存占用情况。 使用此方法需要在DCS实例备份与恢复页签中导出实例的rdb文件。
是否支持控制台导出RDB格式的Redis备份文件? Redis 3.0实例 Redis 3.0是通过AOF文件持久化的,控制台仅支持备份和下载AOF格式的备份文件。
是否存在Redis的持久化重写操作 对于主备和集群实例,华为云Redis实例默认开启AOF数据落盘,实例开启了AOF持久化功能后,华为云Redis会定期进行AofRewrite的磁盘整理,AOF磁盘持久化整理一般在以下2种场景执行: 数据量写入不大,AOF文件不大时,固定在每天的凌晨
表1 企业版和基础版的能力对比 对比项 DCS基础版 DCS企业版 兼容开源Redis版本 兼容开源Redis 4.0/5.0/6.0/7.0,单线程 兼容开源Redis 6.0,多线程 性能 x86架构:单分片QPS约10万/秒 Arm架构:单分片QPS约8万/秒 最大时延1ms
DCS实例是否兼容低版本Redis迁移到高版本 支持,目前Redis高版本是支持兼容低版本的。 源端是DCS Redis,自建Redis,或者其他云厂商Redis的低版本或相同版本实例,都可以迁移到DCS的目标端实例。 父主题: 数据备份/导出/迁移
查找Redis实例大Key和热Key 大Key和热Key是Redis使用中经常遇到的问题,本章节主要介绍DCS管理控制台的大Key和热Key分析功能,通过该功能可以分别监控到Redis实例中占用空间最大的Key和存储数据中被访问最多的Key。
DCS Redis集群实例是否支持原生集群? 当前DCS Redis 3.0版本支持Proxy集群,Redis 4.0和5.0版本支持原生集群(Cluster集群)和Proxy集群,Redis 6.0基础版实例支持原生集群(Cluster集群)。 父主题: 实例特性
注意: Redis Cluster集群实例使用pipeline时,要确保管道中的命令都能在同一分片执行。 父主题: Redis命令
Redis的安全加固方面有哪些建议? 在众多开源缓存技术中,Redis无疑是目前功能最为强大,应用最多的缓存技术之一,但是原生Redis版本在安全方面非常薄弱,很多地方不满足安全要求,如果暴露在公网上,极易受到恶意攻击,导致数据泄露和丢失。
升级Redis 3.0实例到高版本实例 方案概述 Redis开源社区自2019年5月19日发布Redis 3.0最后一个小版本后,一直未对Redis 3.0进行更新。华为云DCS也于2021年3月发布了停售DCS Redis 3.0的公告。
Redis 4.0及以上版本的实例支持命令重命名,Redis 3.0不支持。 父主题: Redis命令
Redis实例支持的单个Key和Value数据大小是否有限制? Key的大小上限为512M。 建议key的大小不超过1KB,这样既节约存储空间,也利于Redis进行检索。 String类型的value值上限为512M。
DCS Redis缓存实例支持Redis的绝大部分命令,任何兼容Redis协议的客户端都可以访问DCS。 因安全原因,部分Redis命令在分布式缓存服务中被禁用,具体请见Redis 5.0禁用的命令。
源Redis使用了多DB,能否迁移数据到集群实例? DCS单机、读写分离和主备实例支持256个库,编号0-255。 如果目的实例为Cluster集群实例。Cluster集群实例只有1个库。 两个解决思路: 源Redis的不同DB合到同一个数据库。 申请多个DCS缓存实例。
可能在部分复杂的命令,大key且命令复杂度超过O(N)场景下,x86 Redis单CPU能力会强于Arm Redis。 综合来看,Arm Redis和x86 Redis能力和性能相当,都能满足业务需求,Arm Redis价格略低,请根据需要进行选择。
如何查询Redis实例的原生版本 连接需要查询的实例,执行info命令: 图1 查询实例信息 父主题: 实例类型/版本
ERR unknown command 'xxx' 该报错代表此命令为未知命令或者非redis协议定义的合法命令,可以参考开源Redis命令协议介绍进行命令构造。