如何保证数据的高可用性

一,高可用性定义

我理解的高可用性应该包括两方面

  • 数据稳定性,数据应该总是可以被访问的
  • 数据访问的速度,数据被存取的速度应该在用户可以承受的范围内

二,保证数据的可用性

可以使用数据库的主从备份来保证数据的高可用性。

  • 数据稳定性的保证:由于采用了主从备份,当一台数据库服务宕掉后,其余数据库能保证数据库的可访问和恢复。

  • 数据访问速度的保证:对主数据库进行写操作,对从数据库进行读操作,从而降低读写操作对某单个数据库server的IO压力,这就是所谓的数据读写分离技术

三,主从数据备份的难点

基于对上述可用性结构的理解,我认为该方案有如下两个难点:

  • 主从数据库需要保证数据的一致性
  • 对于多个从数据库,如何将读请求负载均衡至特定的从数据库

一般有成熟的技术框架来解决这两个技术难点,可在网上搜索。