一.哪些是大key?
一般指数据显存使用量十分大的数据,例如set里放了相当多的数据
ps:例如我们用set储存了单个用户的文章点赞数据,有个男子伴天天无趣就在那给文章点赞,点了几百万,那set里就有了几百万数据,这个可能就是一个大key
二.数据层面的解释--防止大key操作
业务方应尽量避开进行大key操作,如hgetall一次获取特别大的hash数据,用hmset一次设置特别多的value,用lrange一次取一个特别大的list或特别多的元素,若果顾客端须要用到这种操作对应的API,一次操作的返回结果大小必须是在合理可控的范围内,避免造成节点通信超时、网络堵塞等严重后果。
三.结构层面的大key问题解释四.大key怎么发觉?五.怎么解决大key问题?六.大key的删掉问题6.1Redis4.0曾经大key删掉
4.0曾经string,list,set,hash不同数据类型的大key,删掉形式有所不同。通常有两种情况:del命令删掉单个很大的key和del批量删掉大key。直接del命令粗鲁的删大key容易导致redis线程阻塞。4.0曾经要端庄的删掉就是针对不同的类型写脚本,分拆数组,hash表,分批删掉。
6.2Redis4.0之后高贵的删掉大key