主要观点总结
文章介绍了京东App后台中间件的热数据探测与推送系统。该系统的核心功能是探测热点数据并在毫秒级推送到服务器集群内存,以降低热key对数据层的查询压力。文章还提到了该系统的性能指标、实战检验、架构设计等相关内容。
关键观点总结
关键观点1: 项目介绍与核心功能
文章首先介绍了该项目的背景和目标,即为了解决无法预先感知的热点请求问题。核心功能是热数据探测并推送至集群各个服务器,包括突发性的热点数据、热用户和热接口等。这些热key在整个应用集群内保持一致性。
关键观点2: 性能指标
该框架经过多次压测,具有高效的探测性能和推送性能。探测性能可达到每秒处理数十万个key探测任务,推送性能可稳定对外推送每秒数十万次。此外,框架还具有很好的扩展性和稳定性。
关键观点3: 实战检验
文章提到了该框架在京东APP后台的实战应用情况,包括每天探测的key数量、精准捕获热点数据、降低数据层查询压力等方面。在大促期间,该框架的表现更是出色,为应用性能的提升做出了重要贡献。
关键观点4: 架构设计
文章最后介绍了该框架的架构设计,包括etcd集群、client端jar包、worker端集群和dashboard控制台等四个部分。该框架不依赖于任何定制化组件,核心靠netty连接完成分布式计算,设计非常轻量级。
文章预览
项目介绍 京东 App 后台中间件,毫秒级探测热点数据,毫秒级推送至服务器集群内存,大幅降低热 key 对数据层查询压力。 对任意突发性的无法预先感知的热点请求,包括并不限于热点数据(如突发大量请求同一个商品)、热用户(如爬虫、刷子)、热接口(突发海量请求同一个接口)等,进行毫秒级精准探测到。然后对这些热数据、热用户等,推送到该应用部署的所有机器 JVM 内存中,以大幅减轻对后端数据存储层的冲击,并可以由客户端决定如何使用这些热 key(譬如对热商品做本地缓存、对热用户进行拒绝访问、对热接口进行熔断或返回默认值)。这些热 key 在整个应用集群内保持一致性。 核心功能:热数据探测并推送至集群各个服务器 适用场景: mysql 热数据本地缓存 redis 热数据本地缓存 黑名单用户本地缓存 爬虫用户限流 接口、用户维度
………………………………