基于LRU算法高速缓存的设计与实现

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于 L U算法高速缓存 的设计 与实现 R
黄 明志
( 恺 农 业 工 程 学 院 计 算 机 科 学 与 工程 学 院 ,广 州 5 0 2 ) 仲 12 5 摘 要 : 阐述 L RU 算 法 的基 本 原 理 ,提 出在 . T Fa wok平 台上基 于 L NE rme r RU 算 法 的 高速 缓 存 的
据 块 表 示 成 K v au P i< K v Vau >的 形 式 , e V le a T e 。T le r 而
1 L U算 法 R
L RU 的英 文 全 称 是 L atR cnl sd. 指 最 近 es eet U e 是 v
最 少 使 用 数 据 块 置 换 算 法 .其 核 心 思 想 是 将 最 近 最 少
前 提 条 件是 必 须确 定 此节 点 而 通过 H st l 类 , 据 aha e 根 b
关键词 的结果项进行缓存 .互联 网用户 总体上可更快 地获得搜索结果 。而搜索服务提供商则 既可在降低对
百度文库
键 值 却 可 以快 速 获 取 相 应 的 值— — .kd iN d < i eLs o e n t
千 曰
笛 加
on1o n

3 具体 实 现
31 定 义 内部数 据 结 构 .
如 前 所 述 .R C ce实 例 对 象 应 该 包 含 一 个 L U ah Lne LsO 对 象 和一 个 H st l 对 象 , 外 , 了 i d i (f k t aha e b 另 为 限 定 高 速 缓 存 的 最 大 容 量 .需 设 定 一 个 it 的 m x n型 a. C pc v 段 , aai 字 t 当高 速 缓 存 所 保 存 的 数 据 块 达 到 该 最 大
Ke Vau P i T y T 1e 类 型 的对 象 。 y le ar Ke, va > < u
收 稿 日期 :0 2 0 —0 21— 5 4
修 稿 日期 : 0 2 6 0 2 1 -0 - 4
作 者 简介 : 明 志 ( 9 4 , , 东新 会 人 , 黄 1 6 一) 男 广 副教 授 , 究 方 向 为 分布 式计 算 研
基 于 .E rme ok的 应 用 不 断 涌 现 虽 然 Mirsf N T Fa w r coot
服 务 器 硬 件 设 备 和 带 宽 成 本 投 入 的 同 时 .又 可将 因 搜 索 操 作 对 硬 盘 的频 繁 读 写 所 导 致 的 磨 损 降 到 最 低 , 使
得 系 统 更 趋稳 定 。
在 .E 中 向人 们 提 供 了 种 类 非 常 丰 富 、 能 极 其 强 大 NT 功
2 设 计 思 路
在.E rm w r N TFa e 0k中. 要使用 L U算法设 计一个 R
G B级 的 超 大 高 速 缓 存 类 . 须 考 虑 该 类 的 性 能 、 用 必 通
的类库 . 但在具体 的项 目开发 当中 . 总会有一些非 常常
Ln eLsO 类则为所有缓存数据块的集合 . i d i(f k t 具体 类
型为 Ln eLs K y a e a < K yT au> 。 三 , ikd i < eV l P i T e, V l > 第 t u r e 对 于 Ln e LsO ,来 说 . 入 和移 除 其节 点 Ln e Ls — i d i(fT k t I l 插 i d iN k t
实上 ,笔者就是在一个搜索 引擎 的应用程序 之 中使用
本 文 所 设 计 的 L U ah 类 以 实 现 对 海 量 的搜 索 结 果 R C ce
进 行 缓 存 操 作 的 。通 过 此 类 . 以 对 数 以 百 万计 的搜 索 可
o e ft d( ) O r的运算 复杂度为仅为 0 1, I ( 速度是相当快 的, ) 但
使用 的数据块移 出缓存 .从 而在缓存一定 的条件下腾
出空 间 加 载 新 的 数 据块 , 保 缓 存 使 用 效 率 的 最 大 化 。 确 虽 然 .U L R缓 存 常 常 应 用 于 内 外 存 之 间 的 数 据 块 . 但 是 , 类 缓 存 也 同样适 用 于 网络 应 用 的环 境 当 中 。 这 事
用 的 功 能 无 法 使 用 .E 中现 有 的类 来 实 现 例 如 . NT 要 在应用程序之 中实现 G B级 的 高 速 缓 存 的 功 能 .就 目 前 而 言 .必 须 需 要 应 用 程 序 开 发 者 自己进 行 相 应 类 的
设计 。
性 、与.E rm W r N T Fa e ok集合类 的一致性 和实现的难度
设 计 思路 . 给 出一 个 通 用 、 并 高性 能 、 B 级 、 程 安 全 和 支 持 泛 型 的 L G 线 RUC c e缓 存 类 的 ah
具 体 实现 方 法 。

关 键 词 :高速 缓 存 ; RU 算 法 ; 希表 ;双 向 链表 L 哈
0 引 言
近 年来 . 着 .E r e ok 术 的 成熟 . 量 的 随 N TFa w r 技 m 大
等 问题 笔 者 通 过 查 阅 .E rm w r 库 中有 关 集 N TFa e ok类 合 的类 .发 现 有 两 个 类 对 编 写 这 样 一 个 L U ah 极 R Cce 其 有 用 : 一 个 是 支 持 泛 型 的 、 表 示 双 向 链 表 的 Ln eLsO 类 . 一个 就是 H st l 类 。 i d i(f k t 另 ah be a 设计思路 : 首先 , 了 实 现 通 用 性 ,R C ce 被 为 L U ah 类 设 计 成 L U ah< K v T a e 泛 型类 。其 次 .使 用 R C e eT e. V l > u Ln e Ls o eO 类 表 示 储 存 数 据 块 . 将 每 一 数 i d iN d (f k t 且
相关文档
最新文档