一、Redis 是什么?
Redis:REmote DIctionary Server(远程字典服务器)。
Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复制(replication),LUA脚本(Lua scripting), LRU驱动事件(LRU eviction),事务(transactions) 和不同级别的 磁盘持久化(persistence), 并通过 Redis哨兵(Sentinel)和自动 分区(Cluster)提供高可用性(high availability)。
二、Redis 三个特点?
- 由 C 语言编写。
- Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
- Redis支持数据的备份,即master-slave模式的数据备份。
- Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。
- Key-Value、Cache、Persistence。
三、Redis 能干什么?
- 内存存储和持久化:redis支持异步将内存中的数据写到硬盘上,同时不影响继续服务。、内存存储、持久化,内存中是断电即失、所以说持久化很重要(rdb、aof)
- 效率高,可以用于高速缓存
- 地图信息分析
- 取最新N个数据的操作,如:可以将最新的10条评论的ID放在Redis的List集合里面。
- 模拟类似于 HttpSession 这种需要设定过期时间的功能。
- 发布、订阅消息系统。
- 定时器、计数器。
四、redis在windows和linux上的安装过程
参考地址:https://blog.csdn.net/a909301740/article/details/80671396或者狂神说bibi视频
![](https://i-blog.csdnimg.cn/blog_migrate/c9707496d706f0f5940342334780b324.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5db4dd06c1fc2f365c4d68d1ac06cbe4.png)
在Linux下安装redis需要先按照c++环境,make安装过后默认安装路径为 usr/local/bin/
![](https://i-blog.csdnimg.cn/blog_migrate/5c5d479516dfcb61c4937a24976eead4.png)
注:
/usr/local/bin
:这是一个非常重要的目录,用户的很多应用程序和文件都会放在这个目录下,类似于windows下的 program files 目录。
将redis安装成linux系统软件后的目录介绍
- redis-benchmark:性能测试工具,(类似 Apache-bench)可以在自己机器上运行,看看自己机器性能如何(服务启动起来后执行)
- redis-check-aof:修复有问题的AOF文件,rdb和aof后面讲
- redis-check-dump:修复有问题的dump.rdb文件
- redis-cli:客户端,操作入口
- redis-sentinel:redis集群使用
- redis-server:Redis服务器启动命令
最后需要将配置文件redis.conf复制到安装目录下,启动redis服务的时候就需要用此配置文件启动
注:redis默认不是后台启动的,如果需要后台启动,则需要修改配置文件
![](https://i-blog.csdnimg.cn/blog_migrate/c218aeb7aa59939994e2499c9f7052e3.png)
五、利用redis-benchmark为redis做性能压力测试
redis-benchmark 是一个压力测试工具!官方自带的性能测试工具!
redis-benchmark 命令参数!
![](https://i-blog.csdnimg.cn/blog_migrate/302bb4f42b2b3a0ba904125694883f1d.png)
例如
# 测试:100个并发连接 100000请求
redis-benchmark -h localhost -p 6379 -c 100 -n 100000
![](https://i-blog.csdnimg.cn/blog_migrate/e96f2a6f04c18446c38c0f331e8adac3.png)
![](https://i-blog.csdnimg.cn/blog_migrate/0da8af69405a0cd08cfea2f576323079.png)