牛逼哄哄的 JD-hotkey !

简介: 牛逼哄哄的 JD-hotkey !


来源:gitee.com/jd-platform-opensource/hotkey


JD-hotkey 是京东 APP 后台热数据探测框架,历经多次高压压测和 2020 年京东 618 大促考验。

在上线运行的这段时间内,每天探测的key数量数十亿计,精准捕获了大量爬虫、刷子用户,另准确探测大量热门商品并毫秒级推送到各个服务端内存,大幅降低了热数据对数据层的查询压力,提升了应用性能。

该框架历经多次压测,性能指标主要有两个

1 探测性能:

8核单机worker端每秒可接收处理16万个key探测任务,16核单机至少每秒平稳处理30万以上,实际压测达到37万,CPU平稳支撑,框架无异常。

2 推送性能:

在高并发写入的同时,对外推送目前性能约平稳推送每秒10-12万次,譬如有1千台server,一台worker上每秒产生了100个热key,那么这1秒会平稳推送100 * 1000 = 10万次,10万次推送会明确在1s内全部送达。如果是写入少,推送多,以纯推送来计数的话,该框架每秒可稳定对外推送40-60万次平稳,80万次极限可撑几秒。

每秒单机吞吐量(写入+对外推送)目前在70万左右稳定。

在真实业务场景中,可用1:1000的比例,即1台worker支撑1000台业务服务端的key探测任务,即可带来极大的数据存储资源节省(如对redis集群的扩充)。

基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能

介绍

对任意突发性的无法预先感知的热点请求,包括并不限于热点数据(如突发大量请求同一个商品)、热用户(如爬虫、刷子)、热接口(突发海量请求同一个接口)等,进行毫秒级精准探测到。

然后对这些热数据、热用户等,推送到该应用部署的所有机器JVM内存中,以大幅减轻对后端数据存储层的冲击,并可以由客户端决定如何使用这些热key(譬如对热商品做本地缓存、对热用户进行拒绝访问、对热接口进行熔断或返回默认值)。这些热key在整个应用集群内保持一致性。

核心功能:

热数据探测并推送至集群各个服务器。

基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能

适用场景

  • mysql热数据本地缓存
  • redis热数据本地缓存
  • 黑名单用户本地缓存
  • 爬虫用户限流
  • 接口、用户维度限流
  • 单机接口、用户维度限流限流
  • 集群用户维度限流
  • 集群接口维度限流

worker 端强悍的性能表现

每10秒打印一行,totalDealCount代表处理过的key总量,可以看到每10秒处理量在270万-310万之间,对应每秒30万左右QPS。

仅需要很少的机器,即可完成海量key的实时探测计算推送任务。比扩容redis集群规模成本低太多。

界面效果



相关文章
Element UI之el-tabs的样式修改字体颜色、下划线、选中/未选中
Element UI之el-tabs的样式修改字体颜色、下划线、选中/未选中
4325 0
|
存储 数据库 索引
Flutter笔记:滚动之-无限滚动与动态加载的实现(GetX简单状态管理版)
本文介绍Flutter中如何实无线滚动(基于GetX简单状态管理而非有状态组件)
422 0
|
8月前
|
文字识别 Docker 异构计算
面向openEuler操作系统:OCR软件应用部署流程、性能评测
本报告研究在openEuler 22.03 LTS上部署OCR技术,基于Docker容器化实现环境隔离与高效部署,结合PaddleOCR与GPU加速,完成从环境搭建到性能评测的全流程。实验表明,系统在中文识别准确率高达98.7%,单图推理仅250.1毫秒,验证了“openEuler+OCR”方案的可行性与高性能,为AI应用落地提供坚实支撑。
472 0
面向openEuler操作系统:OCR软件应用部署流程、性能评测
|
4月前
|
机器学习/深度学习 人工智能 自然语言处理
从达特茅斯到2026,AI的迭代之路与时代变革
当斯坦福大学在2026年4月发布的AI指数报告中写下“AI在加速,但衡量和管好它的能力,几乎没有跟上”这句话时,全球科技界再次感受到了人工智能发展的磅礴力量与潜在挑战。
446 0
|
8月前
|
人工智能 自然语言处理 监控
AI Ping: 一站式大模型服务评测与API调用平台技术解析
在当前大模型应用爆发式增长的背景下,开发者面临着一个共同的痛点:如何高效、低成本地调用大模型服务? 本文将深入解析AI Ping如何通过其vibe coding工具链实现"零成本"接入三大主流免费模型,帮助开发者在日常开发中显著降低AI使用成本。
AI Ping: 一站式大模型服务评测与API调用平台技术解析
|
分布式计算 物联网 虚拟化
《深度揭秘:软总线如何实现异构网络组网及其独特优势》
软总线技术是解决异构网络组网难题的关键力量,通过协议抽象与归一化、总线中枢智能解析、动态拓扑构建及设备虚拟化管理等方式,实现高效互联。它降低开发复杂度,提升设备兼容性与扩展性,保障数据传输的高效性与稳定性,为万物互联提供坚实支撑。在智能家居、智能工厂和交通等领域,软总线展现出强大优势,推动多设备协同与智能化发展,助力数字化转型与未来创新。
729 3
|
10月前
|
安全 NoSQL 中间件
阿里云通过中国信通院首批安全可信中间件评估
近日,由中国信通院主办的2025(第五届)数字化转型发展大会在京举行。会上,“阿里云应用服务器软件AliEE”、“消息队列软件RocketMQ”、“云数据库Tair”三款产品成功通过中国信通院“安全可信中间件”系列评估,成为首批获此认证的中间件产品。 此次评估覆盖安全可信要求、功能完备性、安全防护能力、性能表现、可靠性与可维护性等核心指标,标志着阿里云中间件产品在多架构适配与安全能力上达到行业领先水平。
614 5
|
存储 自然语言处理 算法
RAG系统文本分块优化指南:9种实用策略让检索精度翻倍
本文深入探讨了RAG系统中的九种文本分块策略。固定大小分块简单高效,但可能破坏语义完整性;基于句子和语义的分块保留上下文,适合语义任务;递归与滑动窗口分块灵活控制大小;层次化和主题分块适用于结构化内容;特定模态分块处理多媒体文档;智能代理分块则通过大语言模型实现动态优化。开发者需根据文档类型、需求及资源选择合适策略,以提升RAG系统的性能和用户体验。作者Cornellius Yudha Wijaya详细分析了各策略的技术特点与应用场景。
2573 1
RAG系统文本分块优化指南:9种实用策略让检索精度翻倍
|
人工智能 运维 NoSQL
Dify x Tablestore 构建低成本、Serverless 知识库
本文介绍如何基于Dify与阿里云Tablestore构建检索增强生成(RAG)系统,解决大模型知识时效性和领域适配性问题,该方案具备低代码、Serverless免运维、高可靠、弹性扩展及低成本等优势。文章通过答疑助手的案例,详细说明了创建Tablestore实例、配置Dify、构建与验证知识库的步骤。
1887 11
Dify x Tablestore 构建低成本、Serverless 知识库
|
自然语言处理 供应链 算法
千星计划模式视频号爆单系统开发
比如视频号带货系统、一线公排系统、轻创优选系统等。看起来用户可能是在探索如何利用微信视频号的电商功能,开发一个能够快速提升销量的自动化系统。