首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MySQL机房活的初步设想

这是学习笔记的第 2043 篇文章 今天和同事聊了下两地三中心的一些理解,后续会在MySQL和Redis方向的高可用架构方案上做一些东西。这算是一个讨论的开始吧。...我们主要从数据延迟和数据冲突来展开,如下是一个IDC架构的设计方案,可以把两个不同的业务整合起来,做到schema级别的隔离,然后业务侧可以实现写。 ?...这种情况下,使用MySQL的主主复制也是一种方案,因为跨IDC的缘故,所以必然存在一些延迟,而且在数据的冲突的方式上,这种方案因为做到了schema级别的隔离,所以也是各自安好,这种方案是一种初步的设计方案...,对于我们来说,MySQL的MGR是一种很好的借鉴方式,核心的字眼就是分布式,我们是需要借鉴分布式的思想。...比如北京顺义和亦庄可以作为同城机房,但是因为地域距离,必然会产生延迟,其实对于有些业务来说,如果为了追求数据强一致性,那么吞吐量就会打折,所以如果是数据写入,那么理想的情况应该是数据写入应该成功,数据的复制关系应该是异步模式

1.2K40

机房活,机房平滑迁移架构方案全集(上+中+下)

放假前三天,写了三篇长文,关于机房活,机房平滑迁移架构与方案的。可能是临近放假,又亦或疫情的影响,阅读都比较低,现将“上中下”汇总成全集,一窥全貌,欢迎错过的同学补课。...上篇 《机房平滑迁移架构方案目标》,主要包含三块内容: (1)单机房架构的核心是什么? (2)机房迁移架构方案的设计目标是什么?...(3)为什么说,想要平滑的实施机房迁移,临时性的机房架构不可避免? 中篇 《机房活,常见架构实践》,主要包含三块内容: (1)什么是理想机房活架构?...(2)理想机房活架构,存在什么问题,适用于什么业务场景? (3)什么是伪机房活架构?适用于什么业务场景?...希望通过这三篇,大家能够对机房活架构,机房平滑迁移架构与方案,有一个初步的了解。 任何脱离业务的架构设计都是耍流氓。

1.2K41
您找到你想要的搜索结果了吗?
是的
没有找到

机房RPC调用实践

最近做的项目是和机房有些关系,不过不是做活,而是将数据从一个机房拆到多个机房,业务上又允许用户异地访问,即数据分业务数据和用户数据,业务数据跟业务发生的机房绑定,用户数据只有一份,按需要跨区访问...: 上图中用户A注册时选择的国家最终保存在A机房,用户A可以到B机房下单,按照隐私合规的要求,用户A的数据只能保存一份,因此D机房下单时必须从A机房获取用户信息,就有跨机房调用的场景了;...还有原来的场景,在没做机房改造之前,下订单也要查询用户信息,不过这里是同机房调用了; 上面就是RPC调用的2种典型场景,RPC调用系统上要支持同机房调用也支持跨机房调用,什么时候是同机房,什么时候是跨机房...路由表是典型的写少读的场景,这里不具体讨论路由表的设计,注意数据的规模和一些一致性要求细节即可。...这里再说下通过这个项目对中间件的理解,中间件应该要解决大部分常见问题,对于一些特殊的问题应该预留接口让接入方来实现以保持良好的扩展性,而不是把所有的实现细节都抛给接入方; 我们在做这个机房调用的时候刚开始的时候想着路由的过程其实就是根据输入参数算出一个机房

1.2K20

机房活架构,究竟怎么玩?

,临时性机房架构如何实施?...机房活架构,什么是理想状态下的“同机房连接”? ?...该机房活架构,并没有做到100%的“同机房连接”,通常称作伪机房活架构。 伪机房活架构,有“主机房”和“从机房”的差别。...(2)跨机房写,会10毫秒延时; 小结: (1)理想机房活架构,是纯粹的“同机房连接”,仅有异步数据同步会跨机房; (2)理想机房活架构,会有较严重数据一致性问题,仅适用于具备数据聚集效应的业务场景...,例如:滴滴,快狗打车; (3)伪机房活架构,思路是“最小化跨机房连接”,机房区分主次,落地性强,对原有架构冲击较小,强烈推荐; 临时性机房活架构,是机房迁移过程中的一个过渡状态,机房迁移步骤又该如何

1.3K21

有赞NSQ集群机房设计

文 | 鲁林 on 基础保障 一、Overview 从有赞双机房开始到金融云架构,针对业务方在机房的应该部署以及消息发送订阅需求,需要 NSQ 针对双机房以及机房部署提供消息发送与订阅服务。...本文主要介绍了 NSQ 双机房以及机房设计以及经验总结。 二、场景和需求 下图是一个机房内基本的 NSQ 消息生产和消费的部署。一个机房内生产者往 NSQ 集群发消息,多个消费者订阅消息。 ?...五、双机房机房 随着业务增长,NSQ 集群上topic数量以及读写流量日渐增加,同时为了满足更多的业务场景,公司机房再度增加。...migrate 的双机房方案的实现主要基于 NSQ 在两个集群间的迁移设计,而机房场景下,生产消费流量要求在多个集群之间路由。...针对新的机房集群需求,我们重新设计了 migrate 的数据结构,提出了一种保存 lookup 数据格式,以及一种 lookup 地址的 schema。

1.9K20

机房下的 Kubernetes 演进

前期区下的 Kubernetes如上图,在业务发展的早期,我们可以在客户聚集的区域部署应用,就近提供服务。每个 Location 都能提供独立、完整的对外服务。...中期区下的 Kubernetes如上图,业务具有一定规模时,我们可以进行集群的合并。在早期,为了规避风险,集群数量会非常大,一个部门上百个集群会给集群管理、维护带来巨大成本。...后期区下的 Kubernetes首先需要达成共识的是,在运维能力允许的情况下,大集群比大量的小集群要好。其次是能在集群内完成的事情就不要跨集群。...总结本文主要是涉及在区域部署 Kubernetes 的一些思考。这些内容起源于工作上正在经历的一次应用架构大调整。

81730

Ansible 机房自动部署发布

而当服务器数量增加,甚至服务器可能存在于跨地域的不同机房情况下,如何减少部署发布的人力和时间成本,实现自动化部署发布和无缝发布,而且在部署发布期间仍然能够正常提供服务,就成为一个至关重要的问题。...由于风控服务在用户场景中处于非常重要的地位,对SLA要求极高,需要提供毫秒级别的访问质量,为了达到这一点,消除掉公网的消耗,需要支持机房服务,而同时带来的问题就是,如何保持各机房的软件版本统一,能够做到快速的统一发布...Playbooks执行的模块,用户可以开发自己的模块或者插件,而saltstack也有一些预装的formulas,同样可以执行自定义的formula,而他们都覆盖了常用的软件模块,如文件传输、web服务器、MySQL...inventory文件,分别为production、staging,inventory文件中定义对应环境的服务器所在的组,以staging为例,web_server_sh、web_server_bj表示两个机房的主机...六、总结 ansible 很好的帮助了我们解决了自动化部署发布的事情,现在项目同步更新到几个机房,已经只需要几分钟就可以完成,节省了许多人力。

1.6K30

基于 MySQL 通道主主复制的机房容灾方案

主一从 主一从可以将多个 MySQL 数据库备份到一台存储性能比较好的服务器上,方便统一分析处理。...本方案通过机房内建立 MySQL 主主复制,此时主从切换无需繁琐的命令,只需要设置 read_only;同城机房间也是建立主主复制,方便容灾演练回切,无需复杂的配置。...两地三中心 MySQL 主从方案 2 为解决复制回路问题,在主机房边界节点实例上,本方案使用上文中根据对端主库 server id 判断是否和 event 的 server id 相同,对 IDC1 边界...总 结 该 MySQL 数据同步方案优化了 MySQL 本身的日志同步机制,引入通道主主复制技术,降低了机房容灾演练和回切时数据同步关系调整带的复杂性;每个通道仅同步临近主库 binlog event...依托数据库通道主主复制数据容灾技术,机房容灾切换时间由传统的 30 分钟降低到 5 分钟,相关脚本集成到自动化平台后进一步降低到 2 分钟以内。机房回切效率由传统的 1 小时降低到 5 分钟以内。

20020

微服务应用的机房部署

为了实现高可用性,微服务一般部署在机房,只要部署到机房就万无一失了?...考虑如下问题: 1 机房负载均衡 当服务部署在多个机房时,最简单的就是遵循用户就近访问原则,比如北方用户访问联通机房,南方用户访问电信机房。...Tomcat容器配置到电信机房的Nginx的upstream里 2 机房数据同步 想要实现服务部署到机房,供用户访问是有前提的,即每个机房的数据都一样,这就要求机房间数据必须保持同步。...1.主从机房架构 以一个机房为主机房,所有写请求都只发给主机房: 主机房的处理机更新本机房的缓存和DB 其他机房的缓存也通过主机房的处理机更新 DB通过MySQL的binlog实现数据同步 主从机房数据同步方案...每个机房的处理机接收到写请求后更新各自的缓存 只有一个机房会更新DB,其他机房DB通过MySQL的binlog同步 该架构的优势是任一机房异常,都不影响其它机房数据更新,因为每个机房都是全量写消息,所以每个机房可以更新自己缓存

69730

技术分享 | 基于 MySQL 通道主主复制的机房容灾方案

主一从 主一从可以将多个 MySQL 数据库备份到一台存储性能比较好的服务器上,方便统一分析处理。...MySQL InnoDB Cluster 弥补组复制无法提供具有自动化故障转移功能的中间件。 组件,成熟案例少。...本方案通过机房内建立 MySQL 主主复制,此时主从切换无需繁琐的命令,只需要设置 read_only;同城机房间也是建立主主复制,方便容灾演练回切,无需复杂的配置。...5总结 该 MySQL 数据同步方案优化了 MySQL 本身的日志同步机制,引入通道主主复制技术,降低了机房容灾演练和回切时数据同步关系调整带的复杂性;每个通道仅同步临近主库 binlog event...依托数据库通道主主复制数据容灾技术,机房容灾切换时间由传统的 30 分钟降低到 5 分钟,相关脚本集成到自动化平台后进一步降低到 2 分钟以内。机房回切效率由传统的 1 小时降低到 5 分钟以内。

74151

Mysql机房同步方案 原

假设现有两个机房,需要做到数据同步。         以下是架构图(实际架构图根据现有机房架构和实际会比下图复杂,但整体思路不变): ?        ...Mycat、Canal、Otter是关键的三项技术:         Mycat:数据库分库分表中间件,可以管理一个mysql集群,屏蔽了mysql集群,对外伪装成mysql server,用户无感知mysql...流程:             1、用户插入一条数据到mycat             2、mycat解析sql,分配sql到指定mysql数据库             3、mysql(假设M1接收到数据...4、mysql(M2)读取二进制日志同步数据,mysql(S)读取二进制日志同步数据,并写出二进制日志             5、Canal读取二进制日志,解析成sql             6、Otter...接到sql,获取连接,在机房B的mycat上执行sql             7、Otter收到sql执行回执,执行完毕。

3K20

有赞发号器机房方案

作者:小朋友 团队:中间件团队 有赞发号器机房方案 发号器一般用来产生全局唯一 ID,有赞发号器的设计及背景参见文章《如何做一个靠谱的发号器》,本文在此基础上进行扩展,提供机房发号与集群拆分能力,下文中使用...发号器架构 问题 根据图1 架构可以看出,将 etcd 跨机房部署,借助 etcd 本身的就能保证在机房的数据一致性及可用性,但在实践中还是会碰到一些问题: 若只有两个机房,没法实现机房级别的高可用...(极端情况下一个机房完全不可用时需要人工恢复) March 单主节点模式,机房时造成大量的跨机房请求,网络稳定性和时延都会变差 March 单主节点不利于水平扩展 集群拆分需要停机,运维复杂度高 机房方案...发号器机房架构 图2 架构进行调整后可以发现已经解决了上述的问题中的:1(高可用)、2(跨机房请求)、3(水平扩容) 这些问题,接下来会详细说明方案如何实现及问题4(动态拆分)的解决方案。...有经验的读者可能会想到,发号器机房同时发号只需要在ID 上选取几个bit 位作为机房的标记就万事大吉了,其实有赞的实现并非如此,其中原因牵涉到一些历史背景。

85540

服务器线机房怎么判断

1、BGP线机房  首先一个机房要想成为BGP线机房,要具有自主IP和AS号;IP用来在移动、联通、电信等运营商之间广播学习,而AS号可以中国互联网信息中心(www.cnnic.cn)查询到;其次,...具备上述条件如果依然不能满足我们的南北互联互通的需求,这样的机房也算不上BGP线机房。...这里我们可以使用第三方测速工具来检查不同区域不同线路到机房响应时间,如果仅个别区域出现超时情况,此类机房还是可以考虑的。...2、线IP机房  这类机房,IDC服务商会给你提供多个IP,比如说一个电信IP,一个网通IP。...如果你通过远程桌面登录服务器,看到服务器上绑定了多个IP,同时这个域名还解析到了多个IP,那么这是线IP机房

2.4K10

腾讯云MongoDB机房部署场景下就近访问原理详解

提示:公众号展示代码会自动折行,建议横屏阅读 机房容灾是存储系统领域非常重要的课题。...本文将从内核代码层面,介绍腾讯云MongoDB数据库系统(CMongo)在机房部署场景下,如何实现业务到机房的就近访问,并保证数据一致性。 1....背景介绍 为了保证服务可用性和数据可靠性,一些重要业务会将存储系统部署在地域机房。...比如在北京,上海,深圳 每个地域的机房各存储一份数据副本,保证即使某个地域的机房无法提供访问,也不会影响业务的正常使用。 在机房部署时,需要考虑机房之间的网络延迟问题。...写操作是需要跨机房同步数据的,所以如果业务模型是写读少,需要谨慎考虑。

4.7K52

mysql实例

1、什么是mysql实例 mysql实例就是在一台机器上开启多个不同的服务端口(如:3306,3307),运行多个MySQL服务进程,通过不同的socket监听不同的服务端口来提供各自的服务...、CPU、磁盘IO资源,导致服务器上的其他实例提供服务的质量下降 3、部署mysql实例 3.1、部署mysql实例的两种方式 第一种是使用多个配置文件启动不同的进程来实现实例,这种方式的优势逻辑简单...var/mysql4 --user=mysql 修改授权 chown -R mysql.mysql /usr/local/var/mysql* 3.2.2、配置实例启动脚本 cp /application...-uroot -p -h127.0.0.1 -P3306 ####密码为空 或者 mysql -S /usr/local/var/mysql1/mysql1.sock 3.3、配置文件实现MySQL...实例 在进行此操作前已经编译安装好了mysql,安装位置在/application/mysql/下 3.3.1、创建目录和配置文件 mkdir -p /data/{3306,3307}/data vim

2.4K30

荔枝FM架构师刘耀华:异地活IDC机房架构

机房架构存在的原因 单机房一旦死机,断电、维护根本无法挽回整个数据,想离线读取等都不行。当一个机房不可用,所有的业务就都不可用。...荔枝 FM 要求业务离用户最近,南方的用户连南方的机房,北方的用户连北方的机房,国外的用户连国外的机房。大陆的网络和国外的网络有一定的隔离性,如果没有做机房的连通性,数据的传输和实时性就会有问题。...跨机房的作用是为了备份,一个机房的数据放在另一个机房是异地活。上面是数据容灾,下面的是业务容灾,第三个是让服务离用户最近。这是荔枝 FM 做跨机房的原因。 做过数据备份的各位一定知道CAP理论。...比如MySQL Cluster集群,内部还是可以用的,MySQL集群提供两阶段提交事务方式,保证各节点数据强一致性。...MySQL的集群无法忍受脱离集群独立工作,一旦和集群脱离了心跳,节点出问题,导致分布式事务操作到那个节点后,整个就会失败,这是MySQL的牺牲。 CP模型,一致性+分区容忍,牺牲了可用性。

1.7K61

idc机房的特点是什么?idc机房和自建机房有什么不同?

不管是什么行业都在广泛使用着idc机房,idc机房也就是一种超大型机房,它利用互联网的通信技术,建立起标准化的数据中心环境,能够给各种单位、各种公司提供全方位的服务,但是由于很多人并不了解idc机房,所以下面为大家具体地介绍一下...idc机房的特点是什么,以及idc机房和自建机房有什么不同。...最后,idc机房分为两种,一种是自用型,一种是商用型,这两种类型的机房都对环境的要求比较高。 二、idc机房和自建机房有什么不同? 1、网络连接率较高。...idc机房必须按照国际标准进行设计,不管是电力设施还是消防体系,都十分可靠,如果是自建机房的话,则无法提供标准的机房环境,可能会减少服务器的寿命增加,出现故障的概率。...上面为大家简要介绍了idc机房,同自建机房相比,idc机房确实有很多优势。

7.5K30
领券