Linux操作技术文档——Redis群集

Redis群集

Redis具有以下几个优点:
1、具有极高的数据读写速度,数据读取的速度最高可达到110000次/S,数据写入速度最高可 达到81000次/s。2、支持丰富的数据类型,不仅仅支持简单的key-value数据类型,还支持Stringsv Lists. Hashess Sets及Ordered Sets等数据类型操作。
3、支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使 用。
4、原子性,Redis所有操作都是原子性的。
5、支持数据备份,即master-salve模式的数据备份。

一、Redis安装部署

编译安装Redis
指定安装路径:make PREFIX=安装路径 install
在这里插入图片描述
运行脚本文件,启动Redis服务
在这里插入图片描述
服务控制
在这里插入图片描述
/etc/init.d/redis_6379 stop 停止Redis服务
/etc/init.d/redis_6379 start 启动Redis服务
/etc/init.d/redis_6379 restart 重启Redis服务
/etc/init.d/redis_6379 status 查看Redis运行状态

二、命令工具

1、redis-cli命令行工具
连接本机上的 Redis 数据库,检测 Redis 服务是否启动
在这里插入图片描述
连接指定远程主机的 Redis 数据库,-h指定远程主机,-p指定Redis服务的端口号,-a指定密码(无密码可省略),退出数据库操作环境,执行"exit"或"quit"命令即可返回原来的Shell环境
在这里插入图片描述
help @ :获取〈group〉中的命令列表:查看所有与List数据类型相关的命令
在这里插入图片描述
help〈command〉:获取某个命令的帮助:查看set命令的命令帮助
在这里插入图片描述
2、redis-benchmark 测试工具

-h:指定服务器主机名。
-p:指定服务器端口。
-s:指定服务器 socketo
-c:指定并发连接数。
-n:指定请求数。
-d:以字节(B)的形式指定SET/GET值的数据大小。
-k: 1 =keep alive 0=reconnecto
-r: SET/GET/INCR使用随机key, SADD使用随机值。
-P:通过管道传输< numreq>请求。
-q:强制退出redis。仅显示query/sec值。
–csv :以CSV格式输出。
-I:生成循环,永久执行测试。
-t:仅运行以逗号分隔的测试命令列表。
-I: Idle模式。仅打开N个idle连接并等待

向 IP 地址为 192.168.10.161 ,端口为 6379 的Redis服务器发送100个并发连接与W0000个请求测试性能
在这里插入图片描述
测试存取大小为100B的数据包的性能
在这里插入图片描述
测试本机上Redis服务在进行set与Ipush操作时的性能
在这里插入图片描述

三、Redis数据库常用命令

1、set:存放数据,基本的命令格式为set key value
get:获取数据,基本的命令格式为get key
在当前数据库下存放一个key为teacher, value为zhanglong的数据,并查看刚才存放的数据
在这里插入图片描述
2、key相关命令
(1)keys:使用keys命令可以取符合规则的键值列表,通常情况可以结合*、?等选项来使用
keys * 查看当前数据库中所有键
在这里插入图片描述
keys v* 查看当前数据库中以v开头的数据
keys v?查看当前数据库中以V开头后面包含任意一位的数据
keys v??查看当前数据库中以v开头后面包含任意两位的数据
在这里插入图片描述
(2)exists:使用exists命令可以判断键值是否存在
判断teacher键是否存在,(integer) 1表示teacher键存在,(integer) 0表示tea键不存在
在这里插入图片描述
(3)del:使用del命令可以删除当前数据库的指定key
在这里插入图片描述
(4)type:使用type命令可以获取key对应的value值类型
在这里插入图片描述
(5)rename:对已有key进行重命名,无论目标key是否存在都进行重命名,且源key的值会覆盖目标key的值
在这里插入图片描述
(6)renamenx:对已有key进行重命名,并检测新名是否存在。如果目标key存在则不进行重命名。
在这里插入图片描述
(7)dbsize:查看当前数据库中key的数目
在这里插入图片描述
3、多数据库常用命令
(1)多数据库间切换:使用select命令切换数据库
在这里插入图片描述
(2)多数据库间移动数据
Redis的多数据库在一定程度上是相对独立的。例如,在数据库0上面存放的K1的数据,在其他的1-15的数据库上是无法查看到的。
在这里插入图片描述
Redis数据库提供了一个move命令,其可以进行多数据库的数据移动。命令的基本语法格式为 “move key dbindex” 。其中,key表示当前数据库的目标键,dbindex表示目标数据库的序号
在这里插入图片描述
(3)清除数据库内数据
清空当前数据库的数据,使用FLUSHDB命令
清空所有数据库的数据,使用FLUSHALL命令

四、构建Redis群集

Master之间分配slots,—共16384个slots。Slave向它指定的Master同步数据,实现备份。
这里使用6台服务器搭建Redis群集,其中3台为master, 3台为slave。6台服务器的IP地址为:192.168.10.161/24-192.168.10.166/24。
1、安装Redis并修改配置文件
在这里插入图片描述
bind 192.168.10.161(161-166)
daemonize yes
logfile "/var/log/redis_6379.log”
cluster-enabled yes
cluster-config-file nodes-6379.conf
cluster-node-timeout 15000
cluster-require-full-coverage no
port 6379
2、安装ruby的运行环境和ruby的Redis客户端
在这里插入图片描述
在这里插入图片描述
使用脚本创建群集
在这里插入图片描述
查看群集状态
在这里插入图片描述
测试群集,使用“c"参数来激活群集模式
在这里插入图片描述

发布了19 篇原创文章 · 获赞 1 · 访问量 625

猜你喜欢

转载自blog.csdn.net/g950904/article/details/104313792
今日推荐