[color=darkred]网站网址:http://www.osforce.cn/openclass/141/show[/color]
数据库的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除了可以作为高可用切换, 还可以提供数据库的查询功能, 因此一举两得, 既满足了高可用, 还可以做读写负载均衡. 相比共享存储, 存储级复制, 块设备复制好处显而易见
数据库的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除了可以作为高可用切换, 还可以提供数据库的查询功能, 因此一举两得, 既满足了高可用, 还可以做读写负载均衡. 相比共享存储, 存储级复制, 块设备复制好处显而易见