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

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


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

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

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


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

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

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

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

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