检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
为了减少大Key和热Key过大,有什么使用建议? string类型控制在10KB以内,hash、list、set、zset元素尽量不超过5000个。 Key的命名前缀为业务缩写,禁止包含特殊字符(比如空格、换行、单双引号以及其他转义字符)。
建议key的大小不超过1KB,这样既节约存储空间,也利于Redis进行检索。 String类型的value值上限为512M。 集合、链表、哈希等key类型,单个元素的value上限为512M。
扫描并删除Redis实例的过期Key 在开源Redis的键空间中,有两种删除Key的方式。 使用DEL等命令直接对Key进行删除。 使用类似于EXPIRE等命令对Key设置过期时间,当达到过期时间时,Redis键空间中的Key将不可访问。
预留内存介绍 预留内存是一部分不能用来存储数据的内存空间,主要用于数据持久化,主备同步,执行实例备份等操作。 配置参数名称:reserved-memory-percent 监控中内存利用率统计是扣除预留内存的。
处理措施 DCS控制台提供了大Key和热Key的分析功能,你可参考分析Redis实例大Key和热Key减少大key和热key。 Redis 3.0实例不支持热key分析,您可以通过配置告警的方式帮助您发现热key。
问题3:为了减少大Key和热Key过大,有什么使用建议? 问题4:为什么Redis 3.0实例没有热Key功能? 问题5:如何提前发现大Key和热Key? 父主题: 分析诊断实例
过期key扫描会对键空间进行Redis的scan扫描,释放内存中已过期但是由于惰性删除机制而没有释放的内存空间。 过期key扫描在主节点上执行,会对实例性能有一定的影响,建议不要在业务高峰期进行。 调用方法 请参见如何调用API。
可用磁盘空间 ECS需要预留足够的可用磁盘空间,存储压缩文件以及解压后的缓存数据文件。 注:为提高数据传输效率,对于较大的数据文件,建议压缩后再传输到弹性云服务器。
volatile-random:回收随机的键使得新添加的数据有空间存放,但仅限于具有“expire”字段集的键。 volatile-ttl:回收具有“expire”字段集中的键,且优先回收存活时间(TTL)较短的键,使得新添加的数据有空间存放。
Redis执行大Key分析后内存使用率降低的原因 Redis执行大Key分析,只会查询占用空间过大的Key,并不会删除Key。
定期删除:由Redis的定时任务函数实现,该函数以一定的频率运行,每次运行时,都从键空间中取出一定数量的随机Key进行检查,并删除其中的过期键。
>=0us Redis实例(单机) 1分钟 used_storage 已使用的存储空间 已使用的存储空间。 单位:可在控制台进行选择,如KB、MB、Byte等。 >=0 Redis实例(企业版存储型) 1分钟 storage_usage 存储空间使用率 存储空间使用率。
使用DCS实现游戏开合服的数据同步 方案概述 应用场景 游戏业务开合服,指一些大型网络游戏为了吸引新玩家,在运营一段时间后,会开启新服务区,当新服务区开放后,老服务区用户存在流向新服务区的趋势,用户数逐渐减少,为了改善老服务区用户的游戏体验,延长游戏生命周期,游戏开发商通常会进行新老服务区合并
下载DCS实例备份文件 由于自动备份和手动备份实例有一定的限制性(自动备份的文件在系统最大保留天数为7天,手动备份会占用OBS空间),您可将实例的rdb和aof备份文件下载,本地永久保存。 当前仅支持将主备、读写分离、或者集群实例的备份文件下载,单机实例不支持备份恢复功能。
购买Redis实例 您可以根据业务需要购买相应计算能力和存储空间的Redis实例,可同时购买多个Redis实例。 准备实例依赖资源 DCS的Redis实例部署于虚拟私有云(VPC)中,且需要绑定具体的子网,通过这样的方式为Redis提供隔离的、用户可自主配置管理的虚拟网络环境。
自动续费 自动续费可以减少手动续费的管理成本,避免因忘记手动续费而导致缓存实例被自动删除。自动续费的规则如下所述: 以缓存实例的到期日计算第一次自动续费日期和计费周期。 缓存实例自动续费周期以您选择的续费时长为准。例如,您选择了3个月,缓存实例即在每次到期前自动续费3个月。
qbuf 输入缓冲区的空间大小(字节数)。 qbuf-free 输入缓冲区的剩余空间大小(字节数)。 obl 输出缓冲区的长度。 oll 输出缓冲区的列表长度。 omem 输出缓冲区的空间大小(字节数)。 events 连接FD上产生的可读、可写事件。读事件:r,写事件:w。
因此,合理规划和使用缓存数据,规范数据写入,有助于减少内存碎片的产生。 Redis 3.0及以下:可以通过定期重启服务解决内存碎片问题。建议实际缓存数据不超过配置可用内存的50%。 Redis 4.0:支持主动整理内存碎片,服务在运行期间进行自动内存碎片清理。
使用Redis的List(链表),例如存储最新1000条评论,当请求的评论数在这个范围,就不需要访问磁盘数据库,直接从缓存中返回,减少数据库压力的同时,提升APP的响应速度。
通过Pipeline模式可降低网络往返时延(Round-trip time,简称RTT),减少read()和write()的系统调用和进程切换次数,从而提升程序的执行效率与性能。