本地缓存使用场景

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了本地缓存使用场景相关的知识,希望对你有一定的参考价值。

1、系统中为什么要本地缓存:

       在程序中,有些表数据,数据很少,但是程序加载的时候要马上访问,并且访问的很 频繁,比如(例如系统配置参数,区域信息),针对这种情况,将数据放到程序的本地缓存中即内存中,从而提升系统的访问效率,减少数据库访问,数据库访问要占用数据库连接,同时网络消耗比较大,但同时要注意,缓存的占用空间、缓存的失效策略。


常用的缓存分两种:本地缓存和分布式缓存。

首先来了解下为什么使用本地缓存,以数据库(如mysql)、本地缓存(如guava cache)及分布式缓存(如redis)的区别来讲:

2、数据库、本地缓存及分布式缓存的区别


数据库本地缓存分布式缓存
存储位置存盘,数据不丢失不存盘,之前的数据丢失不存盘,数据丢失
持久化可以
不可以不可以
访问速度最快
可扩展可存在其他机器的硬盘只能存在本机内存可存在其他机器的内存
使用场景需要实现持久化保存需要快速访问,但需要考虑内存大小

1)需要快速访问,不需要考虑内存大小

 2)需要实现持久化,但会丢失一些数据

     3)需要让缓存集中在一起,访问任一机器上内存中的数据都可以从缓存中得到

3、通过上面的比较,本地缓存能够带给系统更好的性能,但是要考虑存放的数据不能太多及失效策略

以上是关于本地缓存使用场景的主要内容,如果未能解决你的问题,请参考以下文章

LocalCache本地缓存分享

场景应用:自己设计一个本地缓存(代码实现)

场景应用:自己设计一个本地缓存(代码实现)

探讨下如何更好的使用缓存 —— Redis缓存的特殊用法以及与本地缓存一起构建多级缓存的实现

架构师必备:本地缓存原理和应用

Java实现本地缓存分布式缓存及多级缓存