首先. 缓存简单说就是以空间换取时间的手段。这里的空间是指内存空间,而时间则指程序的运行时间。 比如从数据库中获取用户基本信息,如果每次都访问DB,那么程序代码需要等待DB的响应,如果本地有一个map,其中就存储了用户的基本信息,那么直接从map中获取,是否就提高了效率了呢?当然,这个本地的map只是一种本地缓存的简单例子。实际应用中,可以有本地缓存,远端缓存(比如利用memcache,这是一个用C实现按的开源缓存服务)。 2 .用了缓存,除了牺牲了内存空间之外,还要解决缓存同步的问题。比如前面的例子,用户基本信息可能会被更改,要确保缓存中的数据是最新的,而不是脏的旧数据,就需要在数据更新时对缓存进行同步更改,或者将缓存失效。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。