一.为什么要用主从策略?
当项目访问并发量过高时,要么加缓存要么加分库策略,而缓存不适合储存频繁更改的数据,这时候就用到了主从分库策略
二.什么是主从策略?
从就是主的代替,每一个从都有主的全部数据
平时用主库去扛,一旦崩溃了就用从库来代替
主库会陆续将中间产生的新的操作,保存并发送给从库
1.集群策略:
如果是只读的情况下
为了负载抗压,可以加一个负载均衡连接多个同样的服务器,若干个从库,当一个主服务器崩溃了由一个从库顶上去替换担任主服务器。
2.分库策略:
如果是有修改的情况下
将数据拆分到多个服务器,每个服务器负责不同的数据模块,数据之间相互独立,
他们都是主,并且有自己对应的从。
3.容灾策略:
一般是一主三从两哨兵
三.哨兵机制
请求先打到哨兵用来决定哪个是主数据库
哨兵也是一个崩溃了另一个扛
搭建哨兵并不需要写代码,改一下配置文件就行(选择普通启动还是哨兵启动)
其实所有带有存储功能的工具都有主从策略(数据库,redis,kafka等等)