加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

奇妙计划多级缓存,为数据库减负

发布时间:2018-08-21 08:06:33 所属栏目:编程 来源:DBAplus社群
导读:技能沙龙 | 邀您于8月25日与国美/AWS/转转三位专家配合切磋小措施电商拭魅战 作者先容 王梓晨,物流研发部架构师,GIS技能部认真人,2012年插手京东,多年一线团队大促备战履历,认真物流研发一些部分的架构事变,专注于低耽误体系计划与海量数据处理赏罚。今朝负

即先辈先出,裁减最早进来的缓存数据,一个尺度的行列。

奇妙计划多级缓存,为数据库减负

以行列为根基数据布局,从队首进入新数据,从队尾裁减。

LRU(Least RecentlyUsed)

即最近起码行使,裁减最近不行使的缓存数据。假如数据最近被会见过,则不裁减。

奇妙计划多级缓存,为数据库减负

和FIFO差异的是,必要对链表做根基模子,读写的时刻伟大度是O(1),写入新数据进入头部,链表满了数据从尾部裁减;

最近时刻被会见的数据移动到头部,实现算法有许多,如hashmap+双向链表等等;

题目在于如果偶发性某些key被最近频仍会见,而很是态,则数据受到污染。

LFU(Least Frequently used)

即最近行使次数起码的数据被裁减,留意和LRU的区别在于LRU的裁减法则是基于会见时刻。

奇妙计划多级缓存,为数据库减负

LFU中的每个数据块都有一个引用计数,数据块凭证引用计数排序,如果刚好具有沟通引用计数的数据块则凭证时刻排序;

由于新插手的数据会见次数为1,以是插入到行列尾部;

行列中的数据被新会见后,引用计数增进,行列从头排序;

当必要裁减数据时,将已经排序的列表最后的数据块删除;

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读