开放型小区:Cache实现方式总结 - fuliang - JavaEye技术网站

来源:百度文库 编辑:中财网 时间:2024/04/30 05:26:50

Cache实现方式总结

关键字: cache

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

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

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

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

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

分布式策略:

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

memcache结构图: