缓存的使用:
缓存是分布式系统中的重要组件,主要解决高并发,大数据场景下,热点数据访问的性能问题。提供高性能的数据快速访问,提高数据的读取速度。因为服务器和应用客户端之间存在着流量的瓶颈,所以读取大容量数据时,使用缓存来直接为客户端服务,可以减少客户端与服务器端的数据交互,从而大大提高程序的性能。
缓存的优势:
缓存的优势:
1,提升性能,对于性能要求高。
(1):绝大多数情况下,select 是出现性能问题最大的地方。一方面,select 会有很多像 join、group、order、like 等这样丰富的语义,而这些语义是非常耗性能的;另一方面,大多数应用都是读多写少,加剧了慢查询的问题。
(2):分布式系统中远程调用也会耗很多性能,因为有网络开销,会导致整体的响应时间下降。为了挽救这样的性能开销,在业务允许的情况(不需要太实时的数据)下,使用缓存是非常必要的事情。
(1):绝大多数情况下,select 是出现性能问题最大的地方。一方面,select 会有很多像 join、group、order、like 等这样丰富的语义,而这些语义是非常耗性能的;另一方面,大多数应用都是读多写少,加剧了慢查询的问题。
(2):分布式系统中远程调用也会耗很多性能,因为有网络开销,会导致整体的响应时间下降。为了挽救这样的性能开销,在业务允许的情况(不需要太实时的数据)下,使用缓存是非常必要的事情。
2,缓解数据库的压力
当用户请求增多时,数据库的压力将大大增加,通过缓存能够大大降低数据库的压力。
3,对于数据实时性要求不高
对于一些经常访问但是很少改变的数据,读明显多于写,适用缓存就很有必要。
对于一些经常访问但是很少改变的数据,读明显多于写,适用缓存就很有必要。
使用缓存可以提升性能,但普遍存在这种现象:数据更新的延迟。是否应该使用缓存,需要我们在设计时结合业务仔细分析是否适合用缓存。然后缓存一定要设置缓存过期时间,缓存过期时间太长或太短都不好,太短的话请求可能会比较多的落到数据库上,这意味着失去了缓存的优势。缓存时间太长的话缓存中的脏数据会使系统长时间处于一个延迟的状态,而且系统中长时间没有人访问的数据一直存在内存中不过期,浪费内存。