1

我们在两个处理器上部署了一个隔离的 Java 应用程序,主要用于在主处理器出现故障时进行故障转移。我们称它们为处理器 A 和 B。该体系结构当前有一组在 A 上运行的进程和一个在 A 和 B 上运行的 Oracle 数据库,流配置为使它们保持同步。如果 A 出现故障,则会在 B 上启动进程以接管并使用 B 上的数据库。

然后,当 A 恢复时,我们希望整个系统自动恢复到进程在 A 上运行的状态,并且数据库移回 A 为主,B 为从属以进行故障转移。我们主要有这样的工作,我们定义了自己的逻辑来停止 B 上的数据库,基本上擦除 A 上的数据库并从 B 恢复它,然后重新建立流。然而,尽管这在 99% 的情况下对我们有用,但我们仍然会到处发现同步错误。

在我看来,虽然我们正在重新发明轮子,但我们是吗?我觉得应该有一个标准的数据库集群方法,数据库节点可以在其中为我们解决同步问题?我是天真还是这已经存在,什么流行语描述了这种架构?这就是“多主”吗?当一个或另一个故障一段时间后,多主控是否会自动同步?

4

0 回答 0