Redis缓存机制

Posted 六小一

tags:

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

Redis介绍
  • Redis是一款内存高速缓存数据库;
  • 数据模型为:key - value,非关系型数据库使用的存储数据的格式;
  • 可持久化:将内存数据在写入之后按照一定格式存储在磁盘文件中,宕机、断电后可以重启redis时读取磁盘中文件恢复缓存数据;
  • 分布式:当前任务被多个节点切分处理,叫做分布式处理一个任务。单个服务器内存,磁盘空间有限,无法处理海量的缓存数据,必须支持分布式的结构;
  • nosql:not only structured query language 不仅仅结构化查询语言
  • 结构化数据:有规律的一类数据;例如:人的信息,动物信息,考试信息
  • 结构化数据:海量的不具备任何共同特性的数据集合;例如:网页,日志;图片
  • 关系型数据库:体现不同类结构化数据之间的关系的数据,例如ORACLE、mysql
  • 非关系型数据库:存储的是非结构化的海量数据;无法体现数据的关系;例如 mongoDB redis

Redis缓存

数据库缓存:

sql语句是key值,查询结果resultSet是value,当同一个查询语句访问时(select * from t_product),只要曾经查询过,调用缓存直接返回resultSet,节省了数据库读取磁盘数据的时间。


持久层缓存:

减少了连接数据库的时间;减少了resultSet封装成对象的过程。


业务层和控制层的缓存:

减少调用层次。

描述缓存在业务层的逻辑:

    查询商品信息

    判断当前查询在缓存是否有数据:

      如果有数据,直接返回,当前请求结束;

      如果没有数据,查询持久层数据库数据,获取数据存储再缓存一份,供后续访问使用;

    缓存雪崩/缓存击穿

    海量请求访问服务器,服务器的性能由缓存支撑,一旦一定范围的缓存数据未命中,请求的数据访问涌入数据库;承受不了压力造成宕机--重启--海量请求并未消失--宕机--重启,系统长时间不可用;这种情况就是缓存的雪崩。


以上是关于Redis缓存机制的主要内容,如果未能解决你的问题,请参考以下文章

Redis 缓存失效机制

缓存机制

分布式缓存Redis高级应用实战:为什么要用缓存机制

分布式缓存Redis高级应用实战:为什么要用缓存机制

Redis缓存机制

redis主从复制,哨兵机制,缓存穿透缓存击穿缓存雪崩