高并发百万级热点key处理方案

背景

我们知道在面试中,面试官经常会问一些关于高并发的问题,其中热点key问题就是一个热门问题,热点key顾名思义就是访问非常频繁的key,再加上高并发访问条件,热点key缓存问题如何解决。接下来我们从以下三个方面来剖析一下:

1、热点key定义

2、如何发现热点key

3、解决方案

热点key定义

突然有几十万甚至更大的请求去访问redis上的某个特定key。这样会造成流量过于集中,达到例如Redis单实例瓶颈(一般是10W OPS级别),或者物理网卡上限,从而导致这台redis的服务器Hold不住。后果就是接下来对这个key的请求,将会压垮缓存服务

如何发现热点key

1、凭借业务经验,预估出那些访问频繁的热点key

优点:可行性高,例如秒杀商品业务中,秒杀的商品都是热点key

缺点:并非所有的业务都容易预估出热点key,例如商品推荐业务,你事先是无法料之客户的喜好的

2、客户端收集

优点:实现简单方便,只需要在访问redis客户端之前加入一行代码进行数据统计,统计方式多种多样,有本地计数、发消息单独处理统计等

缺点:对客户端代码造成入侵

3、在Proxy(代理层)收集

优点:proxy层统一入口做统计,对业务代码无入侵

缺点:要求缓存架构有proxy层结构才行,例如Proxy可以是Twemproxy

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值