京东网站源码(京东hotkey源码解析)

2024-03-26 11:20:02 3

京东网站源码(京东hotkey源码解析)

大家好,如果您还对京东网站源码不太了解,没有关系,今天就由本站为大家分享京东网站源码的知识,包括京东hotkey源码解析的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

本文目录

京东hotkey源码解析

京东hotkey是一个经过京东大促验证的hotkey防御中间件,大概原理是通过上报key访问数到统计服务器集群,统计服务器集群将hotkey通知到客户端,让hotkey能缓存到本地内存中,做到毫秒级的Scale-Out。处理方式有点像美团cat实时收集数据进行统计,只不过美团cat没有反向通知逻辑而已。非常贴近工作实践,值得一看。 首先看一下缓存入口Cache的get方法,JdHotKeyStore.getValue是获取hotkey的方法,并且会进行访问次数的统计上报,如果获取到hotkey不为空,则直接返回,否则从redis获取并调用JdHotKeyStore.smartSet判断是否有hotkey,有则设置值,最后返回。 JdHotKeyStore.getValue会先调用inRule校验此key是否有对应规则,如果没有对应规则则不处理,然后调用getValueSimple从本地内存中获取hotkey的存储对象ValueModel,如果没有获取到,则调用HotKeyPusher.push开始计数;如果获取到,会调用isNearExpire判断是否快过期了,如果是也计数,然后取出ValueModel里的value是否有设置对应值,有才返回。最后调用KeyHandlerFactory.getCounter().collect进行对应规则的计数。下面来一步步分析此流程。 inRule会去KeyRule缓存中获取对应的规则,经过层层调用会到KeyRuleHolder的findByKey方法,然后继续调用其findRule方法选择对应的KeyRule,如果没有KeyRule就直接返回了,否则会拿到它的duration(hotkey缓存时间),拿到对应duration的本地缓存。实际上这里为了方法的通用性,用了get来代替contain的判断。 findRule的逻辑比较特别,作者已经留下了注释,优先全匹配-》prefix匹配-》 * 通配,这样做是为了更精确选择对应的规则。比如配置了sku_的前缀规则,但是茅台sku的流量突升,需要针对茅台sku的本地缓存再长一点时间让系统平稳渡过高峰期,那就配置一个sku_moutai_sku_id的全匹配规则,这样不会干扰到其他sku的缓存规则。 那么KEY_RULES的规则是怎么来的呢?这就要说到etcd了,其实可以把etcd当做zookeeper,也有对配置crud,然后通知客户端的功能。这里是做了定时拉取+监听变化的双重保证,这里跟携程apollo的处理非常像:不要把鸡蛋放在一个篮子,兜底功能真的很重要。每5秒定时从etcd拉取规则,开启监听器有变化就去etcd拉取规则。fetchRuleFromEtcd从ectd的rule_path获取rules,然后转化成ruleList继续调用notifyRuleChange进行本地处理。 notifyRuleChange会往EventBus发送KeyRuleInfoChangeEvent的通知,进而进入KeyRuleHolder的putRules方法,这里可以看到维护了KEY_RULES和RULE_CACHE_MAP。 回到原有流程,getValueSimple方法的链路比较长,主要是通过key的规则,获取到对应的duration,然后从对应duration的本地缓存中获取ValueModel。 接下来是HotKeyPusher.push,如果是remove则在etcd创建一个节点然后再删除,达到集群删除的效果。如果是探测并且key在规则内,则调用KeyHandlerFactory.getCollector().collect进行统计。 KeyHandlerFactory.getCollector().collect方法交替使用两个map,对count进行累加,这样清理map的时候就不需要停顿了,交替使用是避免停顿的有效方式。 接回上文,还有一个 KeyHandlerFactory.getCounter().collect收集的是规则的访问次数,也是取到对应的规则,然后对规则的访问总数、热次数进行累加。 两个指标的收集已经分析完毕,那怎么发送到worker呢?来到PushSchedulerStarter,这里会启动对两个指标的定时线程池,分别会定时调用NettyKeyPusher的send和sendCount方法。 NettyKeyPusher的send和sendCount方法都是为统计数据选择对应的worker然后进行请求,chooseChannel就是根据key哈希到其中一个worker上,然后发送请求即可。 最后当worker统计到hotkey时,client需要接收worker推送过来的hotkey进行存储,可以看到NettyClientHandler会向EventBus发送ReceiveNewKeyEvent事件,ReceiveNewKeyListener收到此事件后将调用receiveNewKeyListener.newKey,将hotkey放到本地缓存,client端的处理流程就结束了。 由上文可知,client与worker的交互只有推送统计数据到worker,worker接收处理,最后推送hotkey到client。因此worker端只需要分析两个部分:统计数据汇总、推送hotkey。 首先看到HotKey的处理逻辑是在HotKeyFilter中,首先会对totalReceiveKeyCount进行累加,然后调用publishMsg,如果统计信息超时1秒或者在白名单中就不处理,否则继续调用keyProducer.push。 keyProducer.push将未过时的统计信息丢进queue中。 worker端会开启指定数量的KeyConsumer,不断消费queue中的统计数据。根据统计数据的类型调用KeyListener的removeKey和newKey。 KeyListener的removeKey和newKey方法对Cache中的滑动窗口SlidingWindow进行删除或者累加,删除或者达到一定访问数就会推送到根据appname选出所有client进行推送。 京东的hotkey处理是通过计数来动态判断是否为hotkey,然后缓存再本地内存中,做到毫秒级的scale out。那还有没有其他解决方案?下面是我的观点: 1.如果面对一些缓存key很少的场景,比如活动页信息(同时进行的活动页不可能超过1000),完全就可以直接将缓存放在本地内存中,到了刷新时间就从redis拉取最新缓存即可,不需要动态计算hotkey。也就是常见的多级缓存。 2.同样是动态判断hotkey,但会将hotkey迁移到专门的、更多节点、更高性能的hotkey redis集群中,集群中每个节点都有同一个hotkey缓存,这样就可以做到请求的分散,避免流量都流向同一个redis节点,判断是hotkey就去hotkey集群中取,不需要存在本地内存中了,维护起来会比较简单。

java抓取京东商城商品信息,根据网页源文件如何写抓取如下信息:

京东商城的相关链接怎么做,为什么插入源代码不显示图片,是不是代码错了,是不是要替换代码啊就像天猫

你可以先进入京东自带的器,就是你需要做链接的地方,把图片全部上传上去,等上传好之后,点击图片会出现连接,把连接复制下来,把连接复制到dw里替换图片连接 全部完成后把代码复制进去就可以了

你好,我在网上买的ECSHOP防京东网站整站源码,请问怎么本地测试

  • 数据库信息不正确,通信失败

  • 你是淘宝上面买的吗,这个报错是数据库信息不对,需要修改配置文件

用京东网的源代码,修改一下,做一个类似的商城网站要多少钱

套用一个差不多的简陋模板 有熟人的话白送 买个的话 400域名 一年60 空间一年450

【实践】仿京东商城小程序(附源码)

  最近学习使用小程序开发开发了一款仿京东商城小程序效果如下:   仿京东商城小程序基本实现首页搜索、商品分类列表、购物车等功能,项目结构如下:   购物车功能示例,在pages下创建shoppingCart.wxml文件:   样式shoppingCart.wxss:   购物车实现的功能主要有选择商品,加减商品数量、全选、反选、结算等,实现逻辑如下:

以上就是我们为大家找到的有关“京东网站源码(京东hotkey源码解析)”的所有内容了,希望可以帮助到你。如果对我们网站的其他内容感兴趣请持续关注本站。

京东网站源码(京东hotkey源码解析)

本文编辑:admin

更多文章:


网上批发平台最便宜(一次性所料杯子批发那个平台最便宜)

网上批发平台最便宜(一次性所料杯子批发那个平台最便宜)

这篇文章给大家聊聊关于网上批发平台最便宜,以及一次性所料杯子批发那个平台最便宜对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录一次性所料杯子批发那个平台最便宜哪个平台批发海鲜最便宜网红零食怎么进货比较便宜哪里批发小食品小零食便

2024年5月23日 02:13

淘宝互刷群名字(淘宝线上线下聚会交友的圈子帮我想个名字)

淘宝互刷群名字(淘宝线上线下聚会交友的圈子帮我想个名字)

这篇文章给大家聊聊关于淘宝互刷群名字,以及淘宝线上线下聚会交友的圈子帮我想个名字对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录淘宝线上线下聚会交友的圈子帮我想个名字请问这个淘宝互刷还有刷单Q企业群(34一八21四五伍)是什么

2024年1月29日 12:20

天猫购物货到付款(天猫商城可以货到付款吗)

天猫购物货到付款(天猫商城可以货到付款吗)

大家好,如果您还对天猫购物货到付款不太了解,没有关系,今天就由本站为大家分享天猫购物货到付款的知识,包括天猫商城可以货到付款吗的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录天猫商城可以货到付款吗从天猫买的东西货到

2024年2月2日 03:40

一个人0资金怎么创业(手头没资金的人,如何创业)

一个人0资金怎么创业(手头没资金的人,如何创业)

大家好,一个人0资金怎么创业相信很多的网友都不是很明白,包括手头没资金的人,如何创业也是一样,不过没有关系,接下来就来为大家分享关于一个人0资金怎么创业和手头没资金的人,如何创业的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开

2024年3月15日 10:20

内衣店投资多少钱(开内衣店的投资费用包括哪些)

内衣店投资多少钱(开内衣店的投资费用包括哪些)

各位老铁们好,相信很多人对内衣店投资多少钱都不是特别的了解,因此呢,今天就来为大家分享下关于内衣店投资多少钱以及开内衣店的投资费用包括哪些的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录开内衣店的投资费用包括哪些

2024年4月10日 01:40

便利店新星公交车第几集?便利店新星刘延珠多少集分手

便利店新星公交车第几集?便利店新星刘延珠多少集分手

大家好,如果您还对便利店新星不太了解,没有关系,今天就由本站为大家分享便利店新星的知识,包括便利店新星公交车第几集的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录便利店新星公交车第几集便利店新星刘延珠多少集分手便利

2024年5月12日 10:41

小米官方旗舰店和京东自营店区别(小米官网和京东自营店的价格一样吗)

小米官方旗舰店和京东自营店区别(小米官网和京东自营店的价格一样吗)

本篇文章给大家谈谈小米官方旗舰店和京东自营店区别,以及小米官网和京东自营店的价格一样吗对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录小米官网和京东自营店的价格一样吗买小米手机选京东自营还是小米商城好一点在京东上看到小米手机官

2024年3月22日 23:00

农村电商发展现状(临沂市河东区郑旺镇农村电商的发展现状)

农村电商发展现状(临沂市河东区郑旺镇农村电商的发展现状)

“农村电商发展现状”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看农村电商发展现状(临沂市河东区郑旺镇农村电商的发展现状)!本文目录临沂市河东区郑旺镇农村电商的发展现状农村电子商务中存在的问题有哪些许昌市农村电商发展现状及特

2024年2月7日 11:20

广州新闻发布(10月8日广州还开新闻发布会吗)

广州新闻发布(10月8日广州还开新闻发布会吗)

其实广州新闻发布的问题并不复杂,但是又很多的朋友都不太了解10月8日广州还开新闻发布会吗,因此呢,今天小编就来为大家分享广州新闻发布的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录10月8日广州还开新闻发布会吗1

2024年5月18日 12:42

网购衣服技巧(网上买衣服,怎么买好看,又便宜)

网购衣服技巧(网上买衣服,怎么买好看,又便宜)

各位老铁们好,相信很多人对网购衣服技巧都不是特别的了解,因此呢,今天就来为大家分享下关于网购衣服技巧以及网上买衣服,怎么买好看,又便宜的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录网上买衣服,怎么买好看,又便宜

2024年3月5日 06:20

淘米网属于中国还是日本?淘米网都有哪些游戏呢

淘米网属于中国还是日本?淘米网都有哪些游戏呢

各位老铁们,大家好,今天由我来为大家分享淘米网,以及淘米网属于中国还是日本的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目录淘米网属于中国还是日本淘米

2024年3月15日 06:40

淘宝直播入口中控台(淘宝直播 电脑端直播 中控台直播黑屏 直播失败)

淘宝直播入口中控台(淘宝直播 电脑端直播 中控台直播黑屏 直播失败)

大家好,如果您还对淘宝直播入口中控台不太了解,没有关系,今天就由本站为大家分享淘宝直播入口中控台的知识,包括淘宝直播 电脑端直播 中控台直播黑屏 直播失败的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录淘宝直播 电

2024年2月23日 04:20

网店管家官方网站(淘宝、网店每天发货大,很乱,很容易出错怎么办怎么实行有效的网店管理)

网店管家官方网站(淘宝、网店每天发货大,很乱,很容易出错怎么办怎么实行有效的网店管理)

大家好,网店管家官方网站相信很多的网友都不是很明白,包括淘宝、网店每天发货大,很乱,很容易出错怎么办怎么实行有效的网店管理也是一样,不过没有关系,接下来就来为大家分享关于网店管家官方网站和淘宝、网店每天发货大,很乱,很容易出错怎么办怎么实行

2024年2月27日 04:20

免费的andpods(andpods显示的电量准吗)

免费的andpods(andpods显示的电量准吗)

大家好,今天小编来为大家解答以下的问题,关于免费的andpods,andpods显示的电量准吗这个很多人还不知道,现在让我们一起来看看吧!本文目录andpods显示的电量准吗andpods8元是永久的吗andpods显示的电量准吗你好,一般

2024年3月31日 12:40

淘宝苹果官网怎么联系人工客服(苹果客服如何转人工)

淘宝苹果官网怎么联系人工客服(苹果客服如何转人工)

其实淘宝苹果官网怎么联系人工客服的问题并不复杂,但是又很多的朋友都不太了解苹果客服如何转人工,因此呢,今天小编就来为大家分享淘宝苹果官网怎么联系人工客服的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录苹果客服如何

2024年5月22日 01:39

淘天猫话费充值卡(淘话通充话费是真的吗)

淘天猫话费充值卡(淘话通充话费是真的吗)

大家好,如果您还对淘天猫话费充值卡不太了解,没有关系,今天就由本站为大家分享淘天猫话费充值卡的知识,包括淘话通充话费是真的吗的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录淘话通充话费是真的吗在淘宝天猫冲了50元充

2024年5月20日 03:26

淘宝账号注销客服电话(淘宝旺旺可以注销吗)

淘宝账号注销客服电话(淘宝旺旺可以注销吗)

大家好,淘宝账号注销客服电话相信很多的网友都不是很明白,包括淘宝旺旺可以注销吗也是一样,不过没有关系,接下来就来为大家分享关于淘宝账号注销客服电话和淘宝旺旺可以注销吗的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!本文目

2024年3月24日 20:40

温州鞋批发市场(温州哪里买皮鞋便宜)

温州鞋批发市场(温州哪里买皮鞋便宜)

各位老铁们好,相信很多人对温州鞋批发市场都不是特别的了解,因此呢,今天就来为大家分享下关于温州鞋批发市场以及温州哪里买皮鞋便宜的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录温州哪里买皮鞋便宜温州最大的鞋子批发市

2024年5月13日 09:03

人气宝贝纸尿裤(尿不湿买什么牌子好)

人气宝贝纸尿裤(尿不湿买什么牌子好)

今天给各位分享尿不湿买什么牌子好的知识,其中也会对尿不湿买什么牌子好进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录尿不湿买什么牌子好夏季新生儿纸尿裤实惠推荐婴儿纸尿裤品牌夏季新生儿纸尿裤推荐纸尿裤排行榜10强

2024年5月16日 11:40

澳宝是中国品牌吗(澳宝红酒属于什么档次)

澳宝是中国品牌吗(澳宝红酒属于什么档次)

大家好,关于澳宝是中国品牌吗很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于澳宝红酒属于什么档次的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!本文目录澳宝红酒

2024年3月17日 06:40

近期文章

本站热文

标签列表

热门搜索