点击关注公众号,回复“1024”获取2TB学习资源!

HotKey在618稳定版0.2版基础上,引入了protobuf序列化方式,并优化了传输对象。

worker单机性能从618大促稳定版的20万QPS稳定,30万极限,提升至30万稳定,37万极限。且cpu峰值下降了15%。

该中间件目前在京东内部10余个核心部门接入使用,服务于京东App服务端前台、中台,数据中台等多个核心业务线。

系统架构

京东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万次极限可撑几秒。

3、在真实业务场景中:

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

介绍

对任意突发性的无法预先感知的热点请求,包括并不限于热点数据(如突发大量请求同一个商品)、热用户(如爬虫、刷子)、热接口(突发海量请求同一个接口)等,进行毫秒级精准探测到。然后对这些热数据、热用户等,推送到该应用部署的所有机器JVM内存中,(关注微信公众号民工哥技术之路,后台回复关键字 Java全栈知识体系 可以获取一份学习路线PDF)以大幅减轻对后端数据存储层的冲击,并可以由客户端决定如何使用这些热key(譬如对热商品做本地缓存、对热用户进行拒绝访问、对热接口进行熔断或返回默认值)。这些热key在整个应用集群内保持一致性。

核心功能:热数据探测并推送至集群各个服务器。

适用场景

  • 1、 mysql热数据本地缓存

  • 2、 redis热数据本地缓存

  • 3、 黑名单用户本地缓存

  • 4、 爬虫用户限流

  • 5、 接口、用户维度限流

  • 6、 单机接口、用户维度限流限流

  • 7、 集群用户维度限流

  • 8、 集群接口维度限流

该开源项目战略意义重大,经历百万级并发,参与京东开源中间件项目建设,一直在等你。

界面效果

开源地址

https://gitee.com/jd-platform-opensource/hotkey

推荐阅读 点击标题可跳转

装逼神器,用起来真香!网友们直呼 666

牛逼,竟然有人开源躺平学习资料!

2021 最牛逼的监控系统,它始终位列第一!

ES 不香吗,为啥还要 ClickHouse?

一款超牛逼的神仙级接私活软件!吊到不行

一、二线城市 IT 公司大盘点!建议收藏

SpringCloud+Jenkins+GitLab实现自动化构建与部署

MySQL 大批量插入,如何过滤掉重复数据?

PS:因为公众号平台更改了推送规则,如果不想错过内容,记得读完点一下“在看”,加个“星标”,这样每次新文章推送才会第一时间出现在你的订阅列表里。

随手在看、转发是最大的支持!

吊炸天的 JD-hotkey !京东开源!单机 QPS 高达 370000相关推荐

  1. 阿里那些吊炸天的开源工具,你知道几个?

    点击下方公众号「关注」和「星标」 回复"1024"获取独家整理的学习资料! 转自:阿里巴巴中间件 从人工到自动化,从重复到创新,技术演进的历程中,伴随着开发者工具类产品的发展. 阿 ...

  2. 京东电器“220V带电新人类”:找寻狂拽炫酷吊炸天的科技感

    忽如一夜春风来,进入2018年,各大电商公司开的实体店已蔚然成风,遍地开花之下,究竟这些实体店有何魅力吸引到用户?各家到底做得如何? 没有体验就没有发言权. 于是乎,就在昨日(10月27日),北京市朝 ...

  3. Sublime Text 3设置吊炸天PHP开发环境

    [原创]Sublime Text 3设置吊炸天PHP开发环境 @heiyeluren @created: 2016/5/31 @last modify: 2016/7/8 1. 下载安装Sublime ...

  4. NLP之PTM:自然语言处理领域—预训练大模型时代的各种吊炸天大模型算法概述(Word2Vec→ELMO→Attention→Transfo→GPT系列/BERT系列等)、关系梳理、模型对比之详细攻略

    NLP之PTM:自然语言处理领域-预训练大模型时代的各种吊炸天大模型算法概述(Word2Vec→ELMO→Attention→Transformer→GPT系列/BERT系列等).关系梳理.模型对比之 ...

  5. python常用命令汇总-酷帅吊炸天的 Pandas 常用操作命令汇总

    非常庆幸自己在有意无意中学习了 Pandas 基础,开始学的时候是觉得它很有意思,功能很强大.然鹅,除了做练习,并没有实际应用.最近工作需要写爬虫,数据处理我就用了 Pandas, 这时才深深体会到其 ...

  6. 如何避免贫穷和忙碌,在2018年你需要这样提升自己 2018年01月07日 00:00:00 2099 热文导读 | 点击标题阅读 Java和Android架构2017年总结:文章精选 吊炸天!74

    如何避免贫穷和忙碌,在2018年你需要这样提升自己 2018年01月07日 00:00:00 2099 热文导读 | 点击标题阅读 Java和Android架构2017年总结:文章精选 吊炸天!74款 ...

  7. Pyecharts:pyecharts(图文+代码)实战(柱状图/条形图/散点图、漏斗图、仪表盘、折线/面积图、水球图、地图、平行坐标系、饼图、极坐标系、雷达图、词云图)之绘制各种吊炸天的图表

    Pyecharts:pyecharts(图文+代码)实战(柱状图/条形图/散点图.漏斗图.仪表盘.折线/面积图.水球图.地图.平行坐标系.饼图.极坐标系.雷达图.词云图)之绘制各种吊炸天的图表 目录 ...

  8. Python语言学习之打印输出那些事:python输出图表和各种吊炸天的字符串或图画、版权声明(如README.md)等之详细攻略

    Python语言学习之打印输出那些事:python输出图表和各种吊炸天的字符串或图画.版权声明(如README.md)等之详细攻略 目录 打印输出标准文档 1.输出表格 2.打印输出各种吊炸天的字符串 ...

  9. Py:Python实现好莱坞《黑客》影视中珠帘似吊炸天的华丽动态加密页面

    Py:Python实现好莱坞<黑客>影视中珠帘似吊炸天的华丽动态加密页面 目录 输出结果 实现代码 输出结果 实现代码 import argparse #命令解析器 import time ...

  10. python画图小猪佩奇_吊炸天!Python 20秒画出小猪佩奇

    原标题:吊炸天!Python 20秒画出小猪佩奇 今年社交平台上的带货女王是谁?范冰冰?杨幂?Angelababy?不,是猪猪女孩小猪佩奇. 小猪佩奇在构图基本是各种曲线,类抛物线.类圆.类椭圆.类二 ...

最新文章

  1. Proxy与NAT有什么区别
  2. matlab安装教程补充
  3. CSS基础工作原理(一)——css规则与选择符器
  4. Windows Server 2019 开发环境
  5. python网络编程—UDP协议
  6. pdf阅读器改背景色
  7. GCC中SIMD指令的应用方法
  8. 《ArcGIS Runtime SDK for Android开发笔记》——(15)、要素绘制Drawtools3.0工具DEMO
  9. 设置eclipse的Maven插件引入依赖jar包后自动下载并关联相应的源码(转)
  10. 从开发到生产上线,如何确定集群大小?
  11. PowerShell Gallery .nupkg手动下载将.nupkg文件重命名为.zip,然后将内容提取到本地文件夹中
  12. 流量控制系统pid整定方法仿真
  13. php revel,Revel命令行工具源码阅读
  14. 第二型曲线积分的总结思考
  15. C语言入门之【C语言 “ 函数 “】
  16. 财务视角下的BI价值——把握客户需求,助推业财融合
  17. html对称标记,html5/css3 字体 对称渐变+描边+影子
  18. 慕课网——MySQL优化
  19. html+css3实现动画demo
  20. Docker网络 docker network

热门文章

  1. 哈尔滨信息应用计算机,[哈尔滨工业大学]计算机应用技术
  2. 应用程序开发选择工具应注重运行效率还是易用性
  3. 举个栗子!Tableau 技巧(105):用 四象限图 对数据进行分类分析
  4. 2022IEOC全国赛专业组获奖及晋级成绩公布 全球赛期待继续辉煌
  5. ArcGis 加载tif,tpk,shp格式文件
  6. Kubernetes 学习笔记(一)--- 基本概念及利用kubeadm部署K8S
  7. CSDN日报190221——被裁的第50天,我终于拿到心仪公司Offer
  8. 《CODE》读后笔记——第14~20章
  9. Avoid passing null as the view root (needed to resolve layout parameters on the inflated layout's ro
  10. 3D立体显示大屏幕拼接视频墙系统解决方案【转】