Redis简介
Redis服务器程序是单进程模型,也就是在一台服务器上可以同时启动多个Redis进程,Redis的实际处理速度则是完全依靠于主进程的执行效率。
若在服务器上只运行一个Redis进程,当多个客户端同时访问时,服务器的处理能力是会有一定程度的下降
若在同一台服务器上开启多个Redis进程,Redis在提高并发处理能力的同时会给服务器的CPU造成很大压力。
在实际生产环境中,需要根据实际的需求来决定开启多少个Redis进程。若对高并发要求更高一些,可能会考虑在同一台服务器上开启多个进程。若 CPU 资源比较紧张,采用单进程即可。
Redis的优点
- 具有极高的数据读写速度:数据读取的速度最高可达到 110000 次/s,数据写入速度最高可达到 81000 次/s。
- 支持丰富的数据类型:支持 key-value、Strings、Lists、Hashes、Sets 及 Ordered Sets 等数据类型操作。
- string :字符串(可以为整型、浮点型和字符串,通称为元素)
- list :列表(实现队列,元素不唯一,先入先出原则)
- set :集合(各不相同的元素)
- hash :hash散列值(hash的key必须是唯一的)
- set /ordered set :集合/有序集合
- 支持数据的持久化:可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
- 原子性:Redis 所有操作都是原子性的。
- 支持数据备份:即 master-salve 模式的数据备份。
Redis安装
1.安装GCC编辑器
sudo yum install pcre*
sudo yum install openssl*
sudo yum install gcc
sudo yum install gcc-c++
sudo yum install make
2.解压安装包
tar -zxcv redis.tar.gz -C ./modules
3.到redis根目录执行 make
4.启动服务
src/redis-server
src/redis-cli
Redis 数据库常用命令
set key value //存放数据
get key //获取数据
keys * //查看当前数据库中所有数据
keys c* //查看当前数据库中以c开头的数据
keys c? //查看当前数据库中以c开头后面包含任意一位的数据
exists ds //判断ds键值是否存在,存在为1,不存在为0
del ds //删除当前数据库的指定 key(ds)
type ds //获取ds对应的value值类型。
//rename 命令是对已有 key 进行重命名。(覆盖)
rename 源key 目标key
使用rename命令进行重命名时,无论目标key是否存在都进行重命名,且源key的值会覆盖目标key的值。
在实际使用过程中,建议先用 exists 命令查看目标 key 是否存在,然后再决定是否执行 rename 命令,以避免覆盖重要数据。
//renamenx 命令是对已有 key 进行重命名,并检测新名是否存在,如果目标 key 存在则不进行重命名。(不覆盖)
renamenx 源key 目标key
//dbsize 命令的作用是查看当前数据库中 key 的数目。