首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Redis的主从复制原理

    1、从库向主库发送sync命令,也就是从库向主库发送同步请求; 2、当主库接受到sync命令后,会执行bgsave命令(保存此刻主库的一个快照),创建一个RDB文件,创建RDB文件期间主库上的执行过的命令都会被保存到缓冲区中; 3、当主库执行完bgsave时,会向从库发送RDB文件,从库接受该文件并加载该文件,将自己的数据库状态更新至主服务器执行BGSAVE命令时的数据库状态; 4、主库将缓冲区的所有写命令发给从库执行; 5、至此可以认为redis主从建立成功,之后主库的每一个写命令都会传到从库上执行。 复制原理说明: master创建RDB文件是通过一个子进程进行的,所以master依然可以处理客户端发来的请求。但这也导致了在保存RDB文件期间,“键空间”可能发生变化(譬如接收到一个客户端请求,执行”set name diaocow”命令),因此为了保证数据同步的一致性,master会在保存RDB文件期间,把接受到的这些可能变更数据库“键空间”的命令保存到缓冲区中。

    01

    数据库PostrageSQL-高可用、负载均衡和复制

    数据库服务器可以一起工作,这样如果主要的服务器失效则允许一个第二服务器快速接手它的任务(高可用性),或者可以允许多个计算机提供相同的数据(负载均衡)。理想情况下,数据库服务器能够无缝地一起工作。提供静态网页服务的网页服务器可以非常容易地通过把网页请求均衡到多个机器来组合。事实上,只读的数据库服务器也可以相对容易地组合起来。不幸的是,大部分数据库服务器收到的请求是读/写混合的,并且读/写服务器更难于组合。这是因为尽管只读数据只需要在每台服务器上放置一次,但对于任意服务器的一次写动作却必须被传播给所有的服务器,这样才能保证未来对于那些服务器的读请求能返回一致的结果。

    02
    领券