数据库高可用、负载均衡、主从复制

多台数据库服务器可以一起工作,其中一台主服务器异常后,另外一台可以迅速的补上,这样组建起高可用服务器;或者多台服务器提供相同的数据,实现负载均衡功能。理想状况,希望多台数据库服务器能够无缝的共同工作。Web服务器可以通过复杂均衡很方便的将请求分发到多台机器。实际上,只读数据库服务器是可以很容易的组织到一起工作。但是,多数数据库服务器并不只提供只读服务,多数都是读写混合的,对于读写混合的数据库服务器,比较难以组织到一起工作。这是因为只读的数据库服务器,仅需要将数据往所有数据库服务器上面放置一次,每台服务器都保存同样的数据,来保证读取请求能够读到相同的结果。

此同步问题导致多台数据库服务器协同工作比较困难。因为没有一种解决方案能够完美的消除同步问题。虽然有一些解决方案,没中解决方案都采用不同的方式来看待同步问题,并尽可能降低对于性能的影响。

有的方案只允许一台服务器修改数据。这台可修改数据的服务器叫做读写服务器或者主服务器。其他的服务器可以跟踪主服务器的数据更改,这些服务器叫做从服务器或者备用服务器。从服务器只有当晋升为一台主服务器时才能被连接,这种叫做温备服务器,可以一直接受连接并且提供只读查询的从服务器叫做热备服务器。

有一种同步解决方案,认为数据修改事务只有在所有的服务器都提交后,才认为被提交。这样来保证容错机制不会丢失任何数据,并且所有的查询获取到的是同样的结果。相对应的,异步的解决方案允许数据在一台服务器上的提交和同步到其他服务器上面有所时间差异,这样的后果是当一台服务器切换为备用机时有些事务可能会丢失,请求的结果也不能保证严格的一直。异步方案主要是为了提升访问速度。

也可以按照粒度来分类这些解决方案。一些方案只针对一个完整的数据库服务器,另一些解决方案允许按照数据表或数据库的级别来进行控制。

任何一种方案都需要考虑数据库性能。但是功能和性能之间通常需要做一个取舍。例如,一个纯同步的方案如果网络不佳的情况下,可能会降低50%异常的性能,而异步的方案对于性能的影响要小的多

https://tool.oschina.net/uploads/apidocs/postgresql9.1/high-availability.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值