摘要: 引子: 我们平时总会有一个电话本记录所有朋友的电话,但是,如果有朋友经常联系,那些朋友的电话号码不用翻电话本我们也能记住,但是,如果长时间没有联系了,要再次联系那位朋友的时候,我们又不得不求助电话本,但是,通过电话本查找还是很费时间的。但是,我们大脑能够记住的东西是一定的,我们只能记住自己最熟悉的,而长时间不熟悉的自然就忘记了。 其实,计算机也用到了同样的一个概念,我们用缓存来存放以前读取的数据,而不是直接丢掉,这样,再次读取的时候,可以直接在缓存里面取,而不用再重新查找一遍,这样系统的反应能力会有很大提高。但是,当我们读取的个数特别大的时候,我们不可能把所有已经读取的数据都放在缓存里,毕竟内 阅读全文
posted @ 2013-04-23 20:26 曾先森在努力 阅读(606) 评论(0) 推荐(0) 编辑
摘要: 如何设计一个LRU Cache?Google和百度的面试题都出现了设计一个Cache的题目,什么是Cache,如何设计简单的Cache,通过搜集资料,本文给出个总结。通常的问题描述可以是这样:Question:[1] Design a layer in front of a system which cache the last n requests and the responses to them from the system.在一个系统之上设计一个Cache,缓存最近的n个请求以及系统的响应。what data structure would you use to implement 阅读全文
posted @ 2013-04-23 15:25 曾先森在努力 阅读(272) 评论(0) 推荐(0) 编辑