Java_Redis_缓存失效前言
前言对于一个高并发的应用,为了降低数据库的访问压力,缓存的使用是势在必得的,但多情况的业务场景或者是不合理的业务设计都可能导致缓存的失效。理解缓存穿透缓存穿透指查询一个数据库不存在的数据。正常情况下,当查询一个数据时,缓存中如果没有则去数据库查询,但如果有恶意用户利用这个方式来频繁的访问一个数据库不存在的数据,会对数据库造成很大压力。采取对查询条件进行基础的校验,例如商品id一般是通过某个规则生成的,不符合规则的直接打断。可以将查询不到的信息设置为key-null的空对象,放入缓存并