java缓存技术有哪些 Java高并发下缓存问题的现象及本质原因是什么?

Java高并发下缓存问题的现象及本质原因是什么?Cache breakdownCache breakdown表示缓存中没有用户请求的数据,但数据库中有用户请求的数据。此时,如果并发用户多,无法通过缓存

Java高并发下缓存问题的现象及本质原因是什么?

Cache breakdown

Cache breakdown表示缓存中没有用户请求的数据,但数据库中有用户请求的数据。此时,如果并发用户多,无法通过缓存获取数据,只能从数据库中获取数据,导致数据库压力瞬间增大,系统访问速度变慢。

Cache avalanche

Cache avalanche是指大量的缓存数据同时过期,当有大量的访问时,会导致数据库压力的增加和停机时间的增加。

cache avalanche和cache breakdown的区别是cache avalanche是指大量数据的过期,cache breakdown是指单个cache的过期

根本原因是系统在设计时没有设计合理的cache系统

对于热数据,可以考虑将其设置为永不过期,并手动处理热数据

对于缓存数据,设置过期时间是为了避免同时出现大量缓存数据失败

我们可以考虑分布式配置缓存