高可用架构对于互联网服务基本是标配,无论是应用服务还是数据库服务都需要做到高可用。对于数据库服务而言,高可用的实现可能更加复杂,对用户的服务可用,不仅仅是能访问,还需要有正确性保证,因此讨论数据库的高可用方案时,在容灾之外,还要同时考虑方案中数据一致性问题。
一、什么是高可用数据库?
高可用数据库是由一系列数据库构成的总体系统,在任何时刻,至少有一个节点可以接受用户的请求并提供数据库服务。大多数数据库架构中,有一个主节点处理主要请求,还有若干备用节点用于容灾切换,当主节点不能提供服务时,备用节点成为主节点继续提供服务,用以保证整个系统的可用和稳定。
二、高可用数据库的优点?
第一,方便读写分离。数据库请求当中,一般读操作的请求次数远大于写操作,高可用数据库可以通过将写操作放在主数据库节点上进行,将读操作分担到若干从库上,来提升读操作吞吐量,进而提升读写效率;
第二,变更不停服。当整个高可用数据库架构或者主节点升级时,可以让高可用数据库先进行主库切换,让备用节点替换原主节点提供数据库服务,当主节点升级完毕后,再将主从库服务切换回来,这样能有效避免系统升级或变更时对用户服务质量产生影响;
第三,备份不影响服务性能。高可用数据库架构包含多个从库,在不影响主节点服务性能的情况下,能非常方便地实现数据的容灾备份。
三、如何打造稳定可靠的高可用数据库服务?
UCloud对比了业内的各解决方案的优劣点,综合了原生MySQL兼容,不同版本、不同应用场景的覆盖等多种因素,采用基于数据库主从复制的方式实现高可用架构,并在原架构基础上,使用双主架构、半同步复制、采用GTID等措施进行了系列优化,保证数据一致性的同时,实现日志的自动寻址。
UCloud 高可用UDB产品采用双主架构,并通过Semi-Sync实现数据同步,由UDB可用性管理模块实时监控底层节点可用性,一旦监测到Master DB不可用,便会自动触发容灾切换机制,内网VIP无状态漂移至Standby DB,保证用户UDB数据库服务的稳定可靠。
在UDB高可用实现的过程中,由于采用单一内网VIP接入,便可完成应用层的无缝切换,整个过程中无需用户进行任何人工干预和配置修改。
高可用架构是数据库运行稳定必不可少的一部分,设计架构时要考虑诸多问题,如数据是否同步、高可用自动切换、自动化运维等等。篇幅有限,在此就不做赘述,在12月26日上线的公开课中,UCloud资深存储研发工程师,将基于UDB云数据库进行MySQL高可用实践分享,并结合在电商、游戏等行业企业的部署实施案例为大家带来深度解读。
您可以扫描海报中二维码进行报名,也可以添加小助手微信申请进入社群互动,更多UDB产品详情,可登陆UCloud官网进行查看。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。