当前位置: 首页 > news >正文

icp网站建设手机seo关键词优化

icp网站建设,手机seo关键词优化,陕西省住房和城乡建设厅综合网站,企业网站建设定制Mysql 介绍 Mysql是典型的开源关系型数据库,是许多网站、应用程序、企业软件产品的首选数据库。 Mysql特性: 易于使用,功能强大,支持事务、触发器、存储过程 管理工具多种多样且功能丰富 可以作为千万级数据管理的大型数据库 采…

Mysql 介绍

Mysql是典型的开源关系型数据库,是许多网站、应用程序、企业软件产品的首选数据库。

Mysql特性:

  • 易于使用,功能强大,支持事务、触发器、存储过程

  • 管理工具多种多样且功能丰富

  • 可以作为千万级数据管理的大型数据库

  • 采用GPL开源协议,允许自由修改源码并应用到商业系统中

  • Mysql的InnoDB事务性存储引擎符合事务ACID模型,能保证完整、可靠地进行数据地存储

高可用结构

  • 主从模式

  • MHA

  • MMM

  • MGR

主从模式

主从模式介绍

主从模式是最基本的Mysql高可用架构,一台服务器作为Master节点,若干服务器作为Slave节点。只有Master处理写数据请求,读请求可仅由Slave节点处理,也可让Master、Slave同时处理。

Master和Slave通过主从复制技术保持数据一致,即Master节点将数据同步给Slave节点。

主从模式具备高可用的基础是主从复制技术。

主从复制技术

  • 当Master 数据发生变更(新增、删除、修改)时,Master将变更日志写入二进制日志文件 binlog

  • Slave启动单独线程(I/O线程)与Master建立网络连接,从Master的binlog中获取变更日志

  • Slave的I/O线程捕获到数据变更日志后,按照顺序保存到中继日志文件 relay log

  • Slave启动单独线程(Sql线程)从relay log 中读取日志并执行,使Slave 库的数据和Master一致

主从模式注意事项

Mysql 5.5之前主从复制为异步方式,Master 提交事务不需要经过Slave 们的确认,那么就会有这种极端情况:

  • Slave 读取Master 的binlog失败了

  • Slave 处理relay log 失败了

  • Slave 执行Sql语句失败了

  • 等......

类似的极端情况将导致数据不一致。所以在Mysql 5.5 主从复制提供了半同步的方式,具体来说就是增加了ACK确认的机制,当Slave接收到binlog 后,会给Master 发送一条确认消息,Master在接收到ACK确认消息之后才会提交事务。半同步方式可以提高数据的一致性,但是Master在写入数据的时候需要等待Slave的确认,所以性能会有所下降。

复制风暴问题,来考虑这样一种更加极端的情况,一个Master ,10个Slave , 这种情况下基于主从复制技术,Master在写入数据前需要同时处理10个Slave的数据复制请求,这种情况下对于Master只能说是不堪重负,如果在加上“半同步机制”,写入性能将大打折扣,这种情况称之为复制风暴问题。解决这种问题的方法是,Master 仅处理一个Slave的主从复制,其它的Slave复制由Slave负责。

MHA(MasterHighAvailability)

MHA模式介绍

以主从模式为基础,接下来就该考虑如下问题了:

  • 如何检测节点故障

  • master节点故障之后如何重新选举

MHA就是在解决这两个问题的,理论上,MHA模式可以在10s-30s内完成主从集群的自动故障检测和自动主从切换。

MHA由两个部分组成:

  • MHA-Manager:负责自动检测Master是否故障,检查主从复制状态,执行自动主从切换等。需要单独服务器部署。

  • MHA-Node:负责修复主从数据的差异,通常和Mysql服务器实例绑定部署。

MHA工作流程

  • Manager 和 Master之间心跳,如果连续4次探测不到心跳,就认为该Master宕机了,Master实例绑定一个Node。

  • Manager 分析各个Slave的binlog,选择一个更接近Master数据的Slave作为备选Master,一个Slave实例分别绑定一个Node。

  • Slave的Node试图通过SSH访问Master所在服务器:

    如果可达,Slave的Node获取Master的binlog数据,若发现Master和Slave数据存在差异,会将差异数据主动复制到Slave,以保持主从数据一致。

    如果不可达,Node对比各个Slave的relay log 差异,并做差异数据补齐。

  • Manager将备选Master提升为Master。

MMM(Multi-MasterReplicationManagerForMysql)

MMM模式简单来说就是引入虚拟IP(vip)技术,这种架构下,一个集群中有两个Master和若干个Slave,当其中一个Master不可用的时候,MMM会指示vip切换到另外一个Master上面,同时会向所有的Slave发送更换Master的消息,之后主从复制将切换到新的Master。

此方案比较古老,不支持Mysql GTID ,并且社区活跃度不够,目前处于无人维护的状态。

MGR(MysqlGroupReplication)

MGR,Mysql组复制模式是Mysql5.7.17版本推出的高可用解决方案,具备如下特性:

  • 一致性高:数据复制基于分布式共识算法Paxos,可以保证多个节点数据的一致性

  • 容错性高:只要不是超过一半的节点宕机,就可以继续提供服务

  • 灵活性强:MGR支持单主模式和多主模式,单主模式下如果Master故障,Slave们会重新选举一个新的Master,多主模式下每一个Mysql节点都可以同时处理写请求

MGR要求至少由3个Mysql节点组成一个复制组,即一主两从,一个事务必须经过复制组内超过半数节点通过后才能提交。

如果在不同的Mysql节点上执行不同的写操作发生了事务冲突,那么先提交的事务先执行,后提交的事务被回滚。在多主模式下,由于每个Mysql节点都可以执行写请求,在写请求高并发的场景下发生事务冲突的概率会非常大,会造成大量事务回滚。

在单主模式下,MGR会自动为复制组选择一个Master负责写请求,如果复制组内超过一半节点与Master通信失败,就认为Master宕机了,这时会根据各个节点的权重和ID标识重新选主。

MGR更加适合一致性强,写并发量不大的场景下使用。

总结

本文阐述了Mysql高可用架构方案,介绍了 主从模式,MHA模式,MMM模式,MGR模式 方案的实现方式,没有哪个方案是完美的,开发人员在选择何种方案应用到项目中也没有标准答案,合适的才是最好的。

文章转载自:一颗苹果

原文链接:https://www.cnblogs.com/Naylor/p/18539381

体验地址:引迈 - JNPF快速开发平台_低代码开发平台_零代码开发平台_流程设计器_表单引擎_工作流引擎_软件架构

http://www.ds6.com.cn/news/59999.html

相关文章:

  • 电商需要了解的知识好看的seo网站
  • 做php网站的话要学什么语言上海百度seo牛巨微
  • 海洋高端的专业做网站公司网站建设推广
  • 长沙品质网站建设优点无锡营销型网站建设
  • 商城类网站建设河北网站推广公司
  • 企业做网站有哪些好处商丘网站seo
  • 有没有免费注册域名的网站关键词seo排名怎么做的
  • html网站地图生成工具百度打广告多少钱一个月
  • 网络建设的网站推广工具
  • wordpress标签生成图片全国分站seo
  • 上海做网站的公司名称网页设计网站
  • 做网站按钮搜索引擎优化排名技巧
  • 山西省网站域名备案得多长时间百度百度一下你就知道主页
  • 网站建设业务员转换大广告公司经营范围
  • go语言 做网站百度网盘怎么用
  • 北京专业网站建设公司排名app有哪些推广方式
  • 重庆门户网站开发报价比百度好用的搜索软件手机版
  • 做自己的网站的好处农大南路网络营销推广优化
  • 查流量网站广告接单平台app
  • 英文网站翻译怎么做呢最近三天的新闻大事小学生
  • 南昌营销型网站制作一个网站需要多少费用
  • 河南省建设工程造价协会网站seo任务平台
  • 做网站哪里好制作网页教程
  • 网站空间空间租赁链接制作软件
  • 怎么评价一个网站做的好否2020年关键词排名
  • 找外包做网站怎么自己注册网站
  • 织梦可以做相亲网站广告优化师前景怎样
  • wordpress 知乎模版seo优化工程师
  • 推荐做网站的公司百度怎么精准搜关键词
  • 充值网站建设网络营销的真实案例分析