redis集群部署运行 以window为例子
首先修改配置文件 redis-cluster.conf
1、配置文件需要配置持久化类型,这里选择aof appendonly yes // 开启aof模式 appendfilename "appendonly.7001.aof" // aof名字 2、集群启动配置 cluster-enabled yes // 允许集群 cluster-config-file nodes-7001.conf // 集群配置文件,运行后自动生成 cluster-node-timeout 15000 // 集群节点响应超时 运行实例 进入redis目录下,运行redis-server.exe ./{“配置文件路径”}/name.conf 需要几个节点,就创建几个redis相关的配置文件,一般来说至少需要要3个master节点,每个主节点需要至少一个slave节点,因此至少需要6个节点 运行成功后只能算是开启了6个redis服务端,还不是集群
关联服务 6个服务端实例有了,就需要关联起来,通过使用 Redis 集群命令行工具 redis-trib 可以进行便携操作。 trib在redis源码中trib地址,将redis-trib.rb文件放到redis安装目录下。 trib是rb(rubby)类型文件,所以需要安装rubby运行环境,rubby安装地址。 在rubby目录下,安装redis驱动:gem install redis redis目录下运行:./redis-trib.rb create –replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005。
此时如果出现如下响应,表示集群关联成功。 Can I set the above configuration? (type ‘yes’ to accept): yes(这里输入yes表示同意设置)
C:\Program Files\Redis>redis-trib.rb create --replicas 1 127.
Read More →
redis的四大功能 multi watch discard exec
multi 词条意思是多、多个,这个命令的用途是用来开启事务的,开启事务后,之后执行的cmd命令,都会进入事务队列,并不会马上执行,只有当执行exec后, 队列中的命令才会按顺序进行,执行顺序是先进队列的先执行。如果有一条命令执行失败,那么整个事务都会失败,事务是原子性的。
127.0.0.1:6379> multi //开启事务 OK 127.0.0.1:6379> hset go 1 1 //第一条命令 QUEUED 127.0.0.1:6379> hset go 2 2 //第二条命令 QUEUED 127.0.0.1:6379> exec // 执行队列 1) (integer) 0 2) (integer) 1 discard discard是用来取消事务的,当事务还未执行时,想要取消multi的队列,可以用该命令取消,取消后队列中的所有命令都会取消。
127.0.0.1:6379> multi //开启事务 OK 127.0.0.1:6379> multi //再次开启(失败) (error) ERR MULTI calls can not be nested 127.0.0.1:6379> discard //取消事务 OK exec exec 如上所说,就是用来执行队列的,与multi组合使用
watch 监听事务 ,一般和multi、exec混合使用,watch用来监听某一个键,在事务开始前,如果当前监听的键被其他客户端改动,那么整个事务都会失败。
127.0.0.1:6379> watch go //客户端A监听go OK 127.
Read More →