检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
为了减少大Key和热Key过大,有什么使用建议? 如何分析Redis 3.0实例的热Key? 如何提前发现大Key和热Key? DCS删除过期key Key的保存时间是多久?如何设置Key的过期时间? Redis执行大Key分析后内存使用率降低的原因
大Key可以分为两种情况: Key的Value占用存储空间较大。一般单个String类型的Key大小达到10KB,或者集合类型的Key总大小达到50MB,则被定义为大Key。 Key的元素较多。一般集合类型的Key中元素超过5000个,则被定义为大Key。 热Key 通常当一个Key的访问频率或资源
eys参数,可以快速帮您找出业务中的热Key,该命令需要在业务实际运行期间执行,以统计运行期间的热Key。命令示例为:redis-cli -h <实例的连接地址> -p <端口> -a <密码> --hotkeys。热Key的详情可以在结果中的summary部分获取到。 通过Redis命令查找大Key
由于大括号“{}”为Redis的hash tag语义,如果使用的是集群实例,Key名称需要正确地使用大括号避免分片不均的情况。 Value相关规范 设计合理的Value大小。 设计合理的Key中Value的大小,推荐小于10 KB。 过大的Value会引发分片不均、热点Key
Redis 5.0支持的新特性说明 DCS的Redis 5.0版本继承了Redis 4.0版本的所有功能增强以及新的命令,同时还兼容开源Redis 5.0版本的新增特性。 Stream数据结构 Stream是Redis 5.0引入的一种新数据类型,它是一个全新的支持多播的可持久化消息队列。
String 大key所在的分片,仅在实例类型为集群时支持,格式为ip:port。 db Integer 大key所在的DB。 size Long Key的value大小。 unit String 表示key的单位。count:key的数量,byte:key的大小。 状态码: 400
热Key分析结果中Key的名称。 类型 Key的类型,包括String、Hash、List、Set、Zset等数据类型。 大小 Key的Value的大小,单位为:Bytes。 频度 表示Key在一段时间(一般指1分钟)的访问频度,会随着访问的频率而变化。 该值并不是简单的访问频率值,而是
Key过大的时候会触发Redis内核对于单Key的迁移限制,造成数据迁移超时失败,Key越大失败的概率越高,大于512MB的Key可能会触发该问题。 造成数据迁移失败。 数据迁移过程中,如果一个大Key的元素过多,则会阻塞后续Key的迁移,后续Key的数据会放到迁移机的内存Buf
Cluster协议。 命令限制 不支持的Redis命令,请参考开源命令兼容性。 读写分离实例受限使用的命令请参考实例受限使用的Redis命令。 不支持的Redis命令,请参考开源命令兼容性。 Proxy集群实例受限使用的命令请参考实例受限使用的Redis命令。 不支持的Redis命令,请参考开源命令兼容性。
更多 技术专题 技术、观点、课程专题呈现 解读Redis技术 华为云产品架构师解读新一代缓存Redis技术的原理和应用 GO语言深入之道 介绍几个Go语言及相关开源框架的插件机制 跟唐老师学习云网络 唐老师将自己对网络的理解分享给大家 智能客服 您好!我是有问必答知识渊博的智能问答机器人,有问题欢迎随时求助哦!
实例类型/版本 DCS Redis 4.0支持的新特性说明 DCS Redis 5.0支持的新特性说明 DCS Redis 6.0支持的新特性说明 如何查询Redis实例的原生版本 Redis的Arm和x86实例有什么差异?
Key过大的时候会触发Redis内核对于单Key的迁移限制,造成数据迁移超时失败,Key越大失败的概率越高,大于512MB的Key可能会触发该问题。 造成数据迁移失败。 数据迁移过程中,如果一个大Key的元素过多,则会阻塞后续Key的迁移,后续Key的数据会放到迁移机的内存Buf
该对象为String类型的大Key:可以尝试将对象分拆成几个Key-Value, 使用MGET或者多个GET组成的pipeline获取值,分拆单次操作的压力。如果是集群实例,由于集群实例包含多个分片,拆分后的Key会自动平摊到集群实例的多个分片上,从而降低对单个分片的影响。 该对象为集
立即被删除从而积压,在实例进行大Key分析过程中,会遍历Redis实例中的所有Key,使实例中的过期Key被识别到过期,因而被删除。 过期Key的删除机制,以及如何手动执行过期Key或设置自动过期Key扫描的操作,请参考过期Key扫描。 父主题: 大Key/热Key分析/过期Key扫描
方案概述 在网页和APP中经常需要用到榜单的功能,对某个key-value的列表进行降序显示。当操作和查询并发大的时候,使用传统数据库就会遇到性能瓶颈,造成较大的时延。 使用分布式缓存服务(DCS)的Redis版本,可以实现一个商品热销排行榜的功能。它的优势在于: 数据保存在内存中,读写速度非常快。
Key的保存时间是多久?如何设置Key的过期时间? Key的保存时间是多久? 如果没有设置过期Key,数据会一直存在。 如果设置了过期Key,过期Key的删除机制请参考过期Key扫描。 如果已经设置了过期Key,希望移除设定的过期时间,可使用Redis PERSIST命令。 如何设置过期Key?
String 大key所在的分片,仅在实例类型为集群时支持,格式为ip:port。 db Integer 大key所在的DB。 size Long Key的value大小。 unit String 表示key的单位。count:key的数量,byte:key的大小。 状态码: 400
缺点:需要对业务代码比较了解,另外对于一些复杂的业务场景,不太容易分析。 方法2:在客户端代码中,调用Redis的函数中,进行访问Key的记录,进而统计出热Key。 缺点:需要代码进行侵入式修改。 方法3:抓包分析。 优点:简单易行。 父主题: 大Key/热Key分析/过期Key扫描
端口访问。 如果IP地址可以ping通,telnet对应的端口不通,则尝试重启实例,如重启后仍未恢复,请联系技术支持。 检查连接数是否超限。 查看已建立的网络连接数是否超过JedisPool配置的上限。如果连接数接近配置的上限值,则建议重启服务观察。如果明显没有接近,排除连接数超限可能。
timeout(3000ms) occurred after 3 retry attempts。 问题排查 根据报错后的提示,将客户端超时时间改大一些。 确认问题发生时的操作,若为执行操作时Key值过大,也会造成超时报错。一般建议key不要超过10KB。 单key大小,Redis限制