1、什么是Redis?
Redis是一个开源的、基于内存的数据存储结构,可用作数据库、缓存(常用)、消息中间件
2、Redis的作用是什么?为什么要使用Redis?
从上面可知:Redis是基于内存,常用作缓存的一种技术,并且Redis存储的方式是以key-value的形式。
我们可以发现这不就是Java的Map容器所拥有的特性吗,那为什么还需要Redis呢?
- Java实现的Map是本地缓存,如果多台实例(机器)的话,每个实例都需要各自保存一份缓存,缓存不具有一致性
- Redis实现的是分布式缓存,如果有多台实例(机器)的话,每个实例都共享一份缓存,缓存具有一致性
- Java实现的Map不是专业作缓存的,JVM内存太大容易挂掉的。一般用作于容器来存储临时数据,缓存的数据随着JVM销毁而结束。Map所存储的数据结构、缓存过期机制等等是需要程序员自己手写的。
- Redis是专业做缓存的,可以用几十个G来做缓存。Redis一般用作缓存,可以将缓存数据保存在硬盘中,Redis重启后可以将其恢复。原生提供丰富的数据结构、缓存过期机制等简单好用的功能
3、Redis的应用场景有哪些
- 缓存(数据查询、短连接、新闻内容、商品内容等)
- 任务队列(秒杀、抢购、12306等)
- 聊天室的在线好友列表
- 应用排行榜
- 网站访问统计
- 数据过期处理(可以精确到毫秒)
- 分布式集群架构中的session分离