Skip to content

KJJD77/MyCache

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

项目介绍

本项目使用多个页面替换策略实现一个线程安全的缓存:

  • LRU:最近最久未使用
  • LFU:最近不经常使用
  • ARC:自适应替换

对于LRU和LFU策略,我在其基础的缓存策略上进行了相应的优化,例如:

  • LRU优化:

    • LRU分片:对多线程下的高并发访问有性能上的优化
    • LRU-k:一定程度上防止热点数据被冷数据挤出容器而造成缓存污染等问题
  • LFU优化:

    • LFU分片:对多线程下的高并发访问有性能上的优化
    • 引入最大平均访问频次:解决过去的热点数据最近一直没被访问,却仍占用缓存等问题

系统环境

Ubuntu 20.04 LTS

运行

makedir build&&cd build

cmake ..

make

./MyCacheTest

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published