【Redis】1.概述
1. 概述
- Redis是一个开源的key-value存储系统。
- 和Memcached类似,它支持存储的类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set 有序集合)和hash(哈希)。
- 这些数据类型都支持push/pop、add/remove及交集、并集和差集及其他更丰富的操作,而且这些操作都是原子性的。
- Redis支持各种不同方式的排序。
- 与Memcached一样,为了保证效率,数据缓存在内存中。
- 与Memcached不同的是Redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件。
- Redis实现了主从同步(master-slave)。
2. 应用场景
2.1 配合关系型数据库做高速缓存
- 高频次、热门访问的数据,降低数据库IO
- 分布式架构,做session共享
2.2 多种数据结构存储持久化数据
| 场景 | Redis实现 |
|---|---|
| 最新N个数据 | 通过List实现按照自然时间排序的数据 |
| 排行榜,Top N | 利用zset有序集合 |
| 时效性的数据,比如手机验证码 | Expire过期 |
| 计数器,秒杀 | 原子性,自增方法INCR、DECR |
| 去除大量数据中的重复数据 | 利用set集合 |
| 构建队列 | 利用list集合 |
| 发布订阅消息系统 | pub/sub模式 |
3. 安装
3.1 安装步骤
-
安装C语言的编译环境。
yum install gcc
-
下载redis-x.x.x.tar.gz放/opt目录。
-
解压命令tar -zxvf redis-x.x.x.tar.gz进行解压。
-
解压完成后使用命令cd redis-x.x.x进入目录。
-
在redis-x.x.x目录中再次执行make命令进行编译。
如果没有准备好C语言编译环境,make会报错
—Jemalloc/jemalloc.h:没有那个文件
解决办法:运行make distclean之后再次执行make命令
-
跳过make test执行make install命令,之后Redis安装到了/usr/local/bin目录下。
3.2 安装目录 /usr/local/bin
- redis-benchmark: 性能测试工具,可以在自己电脑运行,查看电脑性能如何
- redis-check-aof: 修复有问题的AOF文件
- redis-check-dump: 修复有问题的dump.rdb文件
- redis-sentinel: Redis集群使用
- redis-server: Redis服务器启动
- redis-cli: 客户端,操作入口
3.3 Redis启动方式
3.3.1 前台启动(不推荐)
直接输入命令redis-server,但命令行窗口不能关闭,否则服务器就会停止。

3.3.2 后台启动(推荐)
-
备份redis.conf
拷贝一份redis.conf到其他目录
cp /opt/redis-x.x.x/redis.conf /etc/redis.conf
-
修改/etc/redis.conf
修改配置文件,将daemonize no改为yes,使得服务在后台启动
-
启动redis
redis-server /etc/redis.conf
3.4 客户端访问
执行redis-cli访问客户端:

多个端口可以添加-p参数指定端口,如redis-cli -p 6379连接到6379端口的redis

验证是否连接成功:ping,如果返回PONG就表面连接成功。

3.5 关闭Redis
- 单实例关闭:redis-cli shutdown或者进入终端后再使用shutdown关闭。
- 多实例关闭:指定端口关闭,redis-cli -p 6379 shutdown
浙公网安备 33010602011771号