Cache实现方式总结

阅读了一些开源的Cache源代码和在公司几种Cache的实现代码,一些通用的实现方式和数据结构:

hash表:支持多线程,需要同步的hash table。
淘汰算法:通常是LRU,维护一个双向的LRU链表。

内存分配方式:是动态增长还是一次分配,内存管理通常是多个不同大小的块,按照最佳适应、最先适应进行分配或者维护一个内存块的链表。

超时设置:通常使用Lazy策略,当访问的时候再进行判断是否超时以及删除处理。

是否支持多级Cache:根据命中率在内存cache、flash cache进行移动。

分布式策略:

常用的策略hash取模、Consistent Hashing算法。

memcache结构图:

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值