PostgreSQL 基于流复制的HA实践

网站网址:http://www.osforce.cn/openclass/141/show
数据库的HA有多种方案, 例如基于共享存储的HA, 基于存储复制的HA, 基于块设备复制的HA.共享存储HA需要依赖存储的高可用, 如果存储挂了, HA将失效, 还需要通过其他手段来保证存储的HA.基于存储复制的HA, 需要依赖存储复制技术, 商业解决方案价格可能会比较昂贵.基于块设备的复制HA, 在有些没有数据库级解决方案的产品中用得较为广泛, 例如数据库+DRBD.

本案要介绍的是基于数据库本身复制技术的HA.PostgreSQL 流复制是基于数据库块变更(XLOG)的增量复制技术, 分异步和同步模式, 用户可以在会话中对事务选择不同的模式, 事务可靠性要求高的可以选择同步复制模式, 事务响应要求高的可以选择异步模式. 不管同步还是异步, 复制的网络带宽决定了standby的延迟, 例如主库产生XLOG的速度小于带宽可提供的速度, 那么standby基本上是没有延迟的, 或者非常小. 如10GB的网卡可以满足数据库每秒产生1.25G的XLOG. PostgreSQL 流复制的XLOG传输是实时传输的, 不需要等到XLOG文件切换时单个文件传输, 所以延迟非常低PostgreSQL 基于流复制的HA, standby除了可以作为高可用切换, 还可以提供数据库的查询功能, 因此一举两得, 既满足了高可用, 还可以做读写负载均衡. 相比共享存储, 存储级复制, 块设备复制好处显而易见

猜你喜欢

转载自1253118028.iteye.com/blog/2180383