Redis作为高并发、高QPS下必备的中间件,在分布式缓存、分布式锁方面已被广泛使用,本文主要书写redis的安装及基本使用、介绍。
一、下载
wget http://download.redis.io/releases/redis-5.0.0.tar.gz //可以离线下载并手动导入
二、解压、编译
- 解压到 /usr/local/ 文件夹 :tar -zxvf redis-5.0.0.tar.gz -C /usr/local/
- 编译,并自动创建到 /usr/local/redis 文件夹(都是bin):make & make install PREFIX=/usr/local/redis
- 复制 redis.conf 到安装目录 :cp -r /usr/local/redis-5.0.0/redis.conf /usr/local/redis
三、搭建集群
- 创建集群目录 :mkdir /usr/local/redis-cluster
- 复制redis原版到第一个集群节点文件夹: cp -r /usr/local/redis/bin /usr/local/redis-cluster/7001 打开 redis.conf
- 集群配置文件 :vim /usr/local/redis-cluster/7001/redis.conf
#配置下面内容
daemonize yes
bind 192.168.20.100(客户化)
appendonly yes
cluster-enabled yes
cluster-config-file /usr/local/redis-cluster/nodes_7001.conf
cluster-node-timeout 5000
pidfile /usr/local/redis-cluster/redis_7001.pid
logfile “/usr/local/redis-cluster/redis_7001.log”
dir /usr/local/redis-cluster/7001 - 以第一个节点为原版,再复制五个节点,并修改 redis.conf 为对应端口:cp -r /usr/local/redis-cluster/7001 /usr/local/redis-cluster/7002
四、启动节点
/usr/local/redis-cluster/7001/redis-server /usr/local/redis-cluster/7001/redis.conf
/usr/local/redis-cluster/7002/redis-server /usr/local/redis-cluster/7002/redis.conf
/usr/local/redis-cluster/7003/redis-server /usr/local/redis-cluster/7003/redis.conf
/usr/local/redis-cluster/7004/redis-server /usr/local/redis-cluster/7004/redis.conf
/usr/local/redis-cluster/7005/redis-server /usr/local/redis-cluster/7005/redis.conf
/usr/local/redis-cluster/7006/redis-server /usr/local/redis-cluster/7006/redis.conf
五、创建集群
/usr/local/redis-5.0.0/src/redis-cli --cluster create 192.168.20.100:7001 192.168.20.100:7002 192.168.20.100:7003 192.168.20.100:7004 192.168.20.100:7005 192.168.20.100:7006 --cluster-replicas 1
- 查看是否启动成功:ps -ef | grep redis
- 关闭结点:redis-cli -h 127.0.0.1 -p 7005 shutdown
- 退出客户端:exit
六、简单操作
七、Redis数据结构、应用场景
八、对于主从复制的支持
-
主从复制的缺点:依赖于主结点、主结点写入、被从节点请求压力过大
-
支持高可用:
故障自动转移:哨兵模式(2.8版本后推出) 主节点客观下线后,选择领导哨兵,选择最先客观下线的从结点为主结点,通知其他结点follow,返回信息给客户端
-
支持主结点写入、减轻请求压力
树状布局、Cluster集群(3.0版本后推出) 结点分配槽,槽包含数据