当前位置: 首页 > news >正文

热key探测技术架构设计与实践

参考:

得物热点探测技术架构设计与实践

Redis数据倾斜与JD开源hotkey源码分析揭秘

京东热点检测 HotKey 学习笔记

hotkey: 京东App后台中间件,毫秒级探测热点数据,毫秒级推送至服务器集群内存,大幅降低热key对数据层查询压力

京东毫秒级热key探测框架设计与实践,已实战于618大促

问题一、如何进行热点探测?

       首先我们要定义一下如何才能算是一个热点,我们知道热点产生的条件是 2 个:一个时间,一个流量。那么根据这个条件我们可以简单定义一个规则:比如 1 秒内访问 1000 次的数据算是热数据,当然这个数据需要根据具体的业务场景和过往数据进行具体评估。

       对于单机应用,检测热数据很简单,直接在本地为每个 Key 创建一个滑动窗口计数器,统计单位时间内的访问总数(频率),并通过一个集合存放检测到的热 Key。

       而对于分布式应用,对热 Key 的访问是分散在不同的机器上的,无法在本地独立地进行计算,因此,需要一个独立的、集中的热 Key 计算单元

我们可以简单理解为:分布式应用节点感知热点规则配置,将热点数据进行上报,工作节点进行热点数据统计,对于符合阈值的热点进行推送给客户端,应用收到热点信息进行本地缓存等策略这五个步骤:

1.热点规则:配置热 Key 的上报规则,圈出需要重点监测的 Key

2.热点上报:应用服务将自己的热 Key 访问情况上报给集中计算单元

3.热点统计:收集各应用实例上报的信息,使用滑动窗口算法计算 Key 的热度

4.热点推送:当 Key 的热度达到设定值时,推送热 Key 信息至所有应用实例

5.热点缓存:各应用实例收到热 Key 信息后,对 Key 值进行本地缓存(此步骤根据具体业务策略调整)


http://www.mrgr.cn/news/94625.html

相关文章:

  • 【Agent】OpenManus-Tool 详细分析
  • 嵌入式SDIO 总线面试题及参考答案
  • 编程题-第k个语法符号
  • 树莓派 连接 PlutoSDR 教程
  • C++学习之二叉树
  • 深入理解 JVM 的垃圾收集器:CMS、G1、ZGC
  • Linux mount和SSD分区
  • 《AI大模型趣味实战》No2 : 快速搭建一个漂亮的AI家庭网站-相册/时间线/日历/多用户/个性化配色(中)
  • 五大基础算法——枚举算法
  • IT电子书的网站整理
  • go数据结构笔记
  • Netty基础—6.Netty实现RPC服务一
  • 【AI News | 20250316】每日AI进展
  • 新手村:数据预处理-异常值检测方法
  • 加固脱壳技术:DEX动态加载对抗
  • JS基础部分
  • 1.8PageTable
  • 个人居家 Web移动端 局域网 远程控制电脑 工具 PC遥控器拿去玩吧
  • 特殊 IP 地址
  • [GHCTF 2025]GetShell