Reids的BigKey和HotKey

1.什么是BigKey和HotKey

1.1.Big Key

Redis big key problem,实际上不是大Key问题,而是Key对应的value过大,因此严格来说是Big Value问题,Redis value is too large (key value is too large)。

到底多大的value会导致big key问题,并没有统一的标准。

例如,对于String类型的value,有时候超过5M属于big key,有时候稳妥起见,超过10K就可以算作Bigey。

Big Key会导致哪些问题呢?

1、由于value值很大,序列化和反序列化时间过长,网络时延也长,从而导致操作Big Key的时候耗时很长,降低了Redis的性能。

2、在集群模式下无法做到负载均衡,导致负载倾斜到某个实例上,单实例的QPS会比较高,内存占用比较多。

3、由于Redis是单线程,如果要对这个大Key进行删除操作,被操作的实例可能会被block住,从而导致无法响应请求。

Big Key是如何产生的呢?

一般是程序设计者对于数据的规模预料不当,或设计考虑遗漏导致的Big Key的产生。

在某些业务场景下,很容易产生Big Key,例如KOL或者流量明星的粉丝列表、投票的统计信息、大批量数据的缓存,等等。

1.2.Hot Key

Hot Key,也叫Hotspot Key,即热点Key。如果某个特定Key突然有大量请求,流量集中到某个实例,甚至导致这台Redis服务器因为达到物理网卡上线而宕机,这个时候其实就是遇到了热点Key 问题。</

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值