关于一个缓存算法的改进
问题背景:很多客户端同时请求获取同一块硬盘数据。当然问题的所在就是要提高获取到数据的速度。
现在的策略:
开辟一块大的内存,作为缓存,尽量减少IO的读取
方法:
1:定义两个变量,一个CMAP(哈稀表),list。LIST放未用的缓存块(一个缓存为512个字节).CMAP放置具有有用数据的缓存块.
2:当请求到来的时候,首先查CMAP,读取数据。如果没有读全,那么在直接读取IO,然后把读取的数据放到无用的缓存块中,插入到CMAP中。
3:如果缓存使用光,那么对CMAP排序,剔除一半使用次数少的缓存。
现在有没有好的缓存策略,提高速度??
如果方法好,另外在加100分