我有一个系统,其中多个卫星创建金融交易,它们需要与核心服务器同步。卫星是运行带有本地 Postgres 数据库的 Rails 应用程序的远程服务器。核心是另一个具有自己的 Postgres 数据库的 Rails 应用程序。卫星和核心具有几乎相同的架构(但不相同)。一切都是容器化的(应用程序和数据库)。核心服务器很少更新所有卫星需要的一些数据。目前我有一颗卫星,但这个数字将增长到一对(我认为在遥远的将来不会超过 100 颗)。核心和卫星之间不存在顺序或争用问题。核心永远不会更新与任何卫星相同的事务,并且没有卫星将更新与任何其他卫星相同的事务。更妙的是,
由于这是一个多主同步问题,我自然遇到了 BDR。我有以下问题:
- BDR 生产是否准备就绪且稳定?我正在阅读一些竞争技术(如 Bucardo 和 Londist)。它真的会成为 Postgres 9.6 的一部分吗?
- BDR 可以处理断开连接的模型吗?我认为这种情况不会经常发生,但我的卫星可能会断开连接数小时。
- BDR 可以进行选择性同步吗?例如,我只想同步某些表。
- BDR 可以处理 100 颗卫星吗?