标签:一个 请求 页面 tps 测试 serve 服务器 专业 持久化
主从复制的作用主要包括:
1、数据冗余∶主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式。
2、故障恢复∶当主节点出现问题时,可以由从节点提供服务,实现快速的故障恢复;实际上是一种服务的冗余。
3、负载均衡︰在主从复制的基础上,配合读写分离,可以由主节点提供写服务,由从节点提供读服务(即写Redis数据时应用连接主节点,读Redis数据时应用连接从节点),分担服务器负载﹔尤其是在写少读多的场景下,通过多个从节点分担读负载,可以大大提高Redis服务器的并发量。
4、高可用(集群)基石︰除了上述作用以外,主从复制还是哨兵和集群能够实施的基础,因此说主从复制是Redis高可用的基础。
一般来说,要将Redis运用于工程项目中,只使用一台Redis是万万不能的(宕机,最少3个),原因如下:
1、从结构上,单个Redis服务器会发生单点故障,并且一台服务器需要处理所有的请求负载,压力较大;
2、从容量上,单个Redis服务器内存容量有限,就算一台Redis服务器内存容量为256G,也不能将所有内存用作Redis存储内存,一般来说,单台Redis最大使用内存不应该超过20G。 电商网站上的商品,一般都是一次上传,无数次浏览的,说专业点也就是"多读少写"。对于这种场景,我们可以使如下这种架构︰
主从复制,读写分离!80%情况下都是在进行读操作!减缓服务器压力,架构经常使用!至少最低配也要
一主二从!
只要在公司中,主从复制就是必须要使用的,因为在真实的项目中,不可能单机使用redis!
只配置从库,不用配置主库,因为Redis默认就是一个主库
现在我们就开了四台机器相当于
daemonize yes #后台运行打开
logfile "6379.log" #因为有四个配置文件这个log不能重复了,因此不能使用默认的改名
dbfilename dump6379.rdb #同样的生成的这个文件也要改名
port 6380 #这里端口号要改成80
daemonize yes
pidfile /var/run/redis_6380.pid #这里的文件名也要改成6380
logfile "6380.log"
dbfilename dump6380.rdb
port 6381 #这里端口号要改成80
daemonize yes
pidfile /var/run/redis_6381.pid #这里的文件名也要改成6380
logfile "6381.log"
dbfilename dump6381.rdb
redis-server redis79.conf
redis-server redis80.conf
redis-server redis81.conf
可以看到三个log文件已经生成了
服务也都启动了
可以看到三台都是主机
我们再去看看6379端口中发生的变化
继续把8381配一下
认老大,一主(79)二从(80,81)
真实的主从配置应该在配置文件中配置,这样的话是永久的,使用命令是暂时的
真实的主从配置应该在下面这里:
现在主机和两个从机都是空的,我们去主机中去写东西,但是可以在从机中拿到
但是从机是不能写的,他会直接报错
现在我们把主机断掉,也就是两个从机依附的主机没有了,但是去检查的时候它的老大还是它,必须手动改回来,并且我们再去从机中去拿之前的东西还是拿得到的
但是我们现在重新再把主机连接上去,从机依旧还是可以获得主机的东西
但是重点来了,我们这里采用的不是在配置文件配置主从,而是手动控制台敲的,当我们去断掉了从机的连接,再次启动从机,从机的主从关系是会消失的。同时里面的东西是什么也读不到的。
我们现在在这个从机断了的情况下,去进行一个主机的写入操作,那么我们又把这个81从机连上是可以拿到主机刚刚写进去的东西的。
只要变为从机,就会立刻将东西拿过来
Slave启动成功连接到master后会发送一个sync命令 Master接到命令,启动后台的存盘进程,同时收集所有接收到的用于修改数据集命令,在后台进程执行完毕之后,master将传送整个数据文件到slave,并完成一次完全同步。
全量复制︰而slave服务在接收到数据库文件数据后,将其存盘并加载到内存中。
增量复制 :Master继续将新的所有收集到的修改命令依次传给slave,完成同步。
上一个M连接下一个S,这时候也可以完成我们的主从复制,就是方式二中中间那个又当从机又当主机
我们将80变成中间那个来操作一下:
此时的80还是一个从节点,还是无法写入的
那么我们在79存东西,80和81
salveof no one
,如果主机断开了连接,可以使用这个命令来让自己成为主节点,其他的结点就可以手动连接到最新的这个主节点
如果这个时候老大修复了,那就只能重新连接
80变成master带领81了。
标签:一个 请求 页面 tps 测试 serve 服务器 专业 持久化
原文地址:https://www.cnblogs.com/yaoyaoo/p/14289286.html