企业9,redis的运用。实现主从复制,储存数据的特点。

本文介绍了Redis的使用,包括其数据类型、作为缓存的优势、单线程特性、主从复制确保数据一致性和高可用性。通过实例演示了如何配置Redis主从复制,讨论了AOF和RDB持久化策略,以及Redis哨兵系统的作用。同时对比了Redis与Memcache的区别,并提及了Codis作为Redis集群解决方案的优缺点。
摘要由CSDN通过智能技术生成

redis
1、指出多多种数据类型,存储。
2、时间较长,数据变动较少的。放到redis缓存,读写速度快。
3、单线程,数据不会丢失。比较简单,减少不必要的上下文切换。
3、多路io复用。请求可以不断进,不影响速度。
5、主栈更新数据,redis也要跟新
6、memcache,数据没有实际东西保存东西,断电会丢失。redis会在文件追加,不怕。
7、codis,有代理。解决
打开两台虚拟机

[root@server1 ~]# systemctl stop mysqld              ##mysql要停止
[root@server1 ~]# systemctl disable mysqld
Removed symlink /etc/systemd/system/multi-user.target.wants/mysqld.service.
[root@server1 ~]# tar zxf redis-5.0.3.tar.gz      ##解压
[root@server1 ~]# cd redis-5.0.3/
[root@server1 redis-5.0.3]# make && make install    ##编译,下载
[root@server1 redis-5.0.3]# cd utils/
[root@server1 utils]# ./install_server.sh      ##启动脚本
全部默认yes,默认开启
[root@server1 utils]# netstat -tnlp         ##自动安装
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:6379          0.0.0.0:*               LISTEN      5317/redis-server 1

更改配置文件bind为0.0.0.0


[root@server1 utils]# vim /etc/redis/6379.conf 
[root@server1 utils]# /etc/init.d/redis_6379 restart        ##脚本重起
[root@server1 utils]# netstat -tnlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:6379            0.0.0.0:*               LISTEN      5347/redis-server 
传到server2
[root@server1 ~]# scp -r redis-5.0.3 root@172.25.38.2:/root    #传到server2
server2:
[root@server2 ~]# cd redis-5.0.3/
[root@server2 redis-5.0.3]# make install    ##直接下载
[root@server2 redis-5.0.3]# cd utils/
[root@server2 utils]# ./install_server.sh   ##安装
[root@server2 utils]# netstat -tnlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:6379          0.0.0.0:*               LISTEN      1512/redis-server 1 
[root@server2 utils]# vim /etc/redis/6379.conf    ##更改bind
[root@server2 utils]# /etc/init.d/redis_6379 restart
[root@server2 utils]# netstat -tnlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:6379            0.0.0.0:*               LISTEN      1572/redis-server 0 

两台虚拟机的redis开启成功
主从复制:

[root@server2 utils]# vim /etc/redis/6379.conf     
slaveof 172.25.38.1 6379   ##加入句,在最后一行

测试

srver1:
[root@server1 ~]# redis-cli       ##用客户端测试
127.0.0.1:6379> set name wsp
OK
127.0.0.1:6379> get name
"wsp"
127.0.0.1:6379> 
server2:
[root@server2 utils]# redis-cli     ##server2来看数据
127.0.0.1:6379> get name
"wsp"
127.0.0.1:6379> 

在这里插入图片描述
AOF不怕突然停机,重新读取。求稳
RDB快照的方式。速度快
高可用,在redis的slave,被称为哨兵。看哨兵
将server3配置安装redis与server2一样:
并加入slave。主从。
在server1中复制高可用的配置文件

[root@server1 redis-5.0.3]# cp sentinel.conf /etc/redis/
更改配置文件
[root@server1 ~]# vim /etc/redis/sentinel.conf 
##传给其他两个点
[root@server1 ~]# scp /etc/redis/sentinel.conf root@172.25.254.2:/etc/redis/
[root@server1 ~]# scp /etc/redis/sentinel.conf root@172.25.38.3:/etc/redis/

启动

[root@server1 ~]# redis-server /etc/redis/sentinel.conf --sentinel
[root@server2 utils]# redis-server /etc/redis/sentinel.conf --sentinel
[root@server3 utils]# redis-server /etc/redis/sentinel.conf --sentinel

在这里插入图片描述
在这里插入图片描述
测试:
关闭server1:

[root@server1 ~]# redis-cli 
127.0.0.1:6379> shutdown    ##打开关闭
[root@server1 ~]# /etc/init.d/redis_6379 start
Starting Redis server...
我们可以看到自动转
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值