首页 技术 正文
技术 2022年11月21日
0 收藏 566 点赞 4,010 浏览 866 个字
  • 话不多,直接上图:

  • 主要来详细讲讲各个搭配

1》一主一从(成本最低):

    • 并不是用来提高程序性能的,主要是用来做数据的热备(即如果master节点挂掉的话,slave节点能充当master节点),提高程序可用性,容灾性较好。
    • 不存在数据一致性问题,因为只从一个节点中读取。
    • 虽然可以做热备,但是无法做数据备份(非高可用),如果不小心在master节点执行了DROP,slave则马上同步这个操作,所以也无法在slave中找回数据

2》一主多从(通常2-4个Slave):

    • 选取一个节点做master备份,如果master挂了,则有slave马上充当master节点继续进行服务(打个比方,master是皇帝,slave就是太子,如果皇帝驾崩了,太子马上担当重任)
    • 选取另一个节点,专门用来做慢查询、或统计操作

3》双主:

    • 使用场景通常是,你这个业务啊,大部分的并发都是写导致,实在是承载不了
    • 如何保证数据不会出现重叠呢?如果ID是整型,可采用取模操作,进行分配;如果ID是字符串,可采用哈希操作,进行分配
    • 弊端:
      • 如果某一个节点挂掉,整个数据会造成紊乱,不到万不得已不要用
      • 【masterA】后面提供服务的从库需要等到【masterB】先同步完了数据后,才能从【masterA】上同步数据,这样可能会造成一定的延时

4》级联同步:

    • 主要用来减轻master压力,由于master既要写操作,又要被多个slave节点进行读操作,所以中间的slave进行分压操作
    • 如果master挂掉了,那么剩下的slave节点自然就组成了一个天然的集群结构

5》环形多主(处理能力强,却又很危险):

    • 图中有所省略,其中每一个master又对应了多个slave节点
    • 如果某一个master挂掉了,那么整个架构基本就崩了(如通赤壁之战中的曹操,把所有的船都连在一起)

  • 来了解一下通用的架构方案:

使用Atlas Proxy来配置集群代理,不需要在业务代码中,配置多个数据源来主动选择哪个节点进行读,哪个节点进行写。

即时后期我们新增加点或更换节点ip,只需修改Atlas配置内容即可,不需要修改业务代码。

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,960
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,484
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,330
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,113
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,745
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,779