Redis
什么是Redis?
Remote Dictionary Service 远程字典服务。Redis是一个非关系型数据库(NOSQL->Not Only SQL)。
特点
- 数据结构比较简单(以key-value的方式存储数据)
- 数据可以存储在内存中
- 支持自动持久化
- 弱化了事务
能用来做什么?
缓存
可以做Mybatis的二级缓存。(临时数据,不自动持久化)
数据库
可以解决跨域请求session丢失的问题(将Session持久化到redis中)
消息队列
通过redis的list数据结构进行lpush和rpop操作。
redis的安装
第一步:下载redis的安装包
访问https://redis.io/download 到官网进行下载所需要的版本
第二步 redis的运行需要有c语言环境==》需要在linux系统中先安装gcc
# yum install -y gcc
第三步 将下载好的redis安装包放到linux系统中
第四步 对redis安装包进行解压操作
#tar -zxvf redis...
第五步 编译操作
1.需要进入到redis解压后的根目录 #cd redis-...
2.通过make指令进行编译 #make
第六步 方便管理
1.把redis编译之后的配置文件以及启动文件放入到指定的目录,方便管理
2.创建文件夹,分别用来存放redis的可执行文件以及配置文件
#mkdir -p /etc/local/redis/bin==》可执行文件
#mkdir -p /etc/local/redis/etc==》配置文件
3.把可执行文件移动到新创建的bin目录下
#mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-sentinel redis-server redis-trib.rb /etc/local/redis/bin
4.把redis的配置文件移动到新创建的etc目录下
#mv redis.conf /etc/local/redis/etc/
第七步 启动redis
#cd /etc/local/redis/bin/
#./redis-server
常见的的5种数据结构及使用场景
redis中的数据结构是根据值的类型来区分的
- String: 可以包含字符串, 比如图片或者序列化的对象
- List:链表(双向链表),增删快。适用于:最新消息排行等功能,消息队列
- set: 集合。hash表实现, 可以存储多个不可重复的值,无序
- sorted_set:可以存储多个有序的不可重复的值 ,通过score进行排序。
- hash:键值对集合,值可以是多个键值对,可以类比java中的对象、属性以及值的关系 。适合存储、读取、修改用户的属性