5

我们使用 Zend Framework 的 MultiDB 资源 ( http://framework.zend.com/manual/1.10/en/zend.application.available-resources.html#zend.application.available-resources.multidb )

我的任务是添加一个具有三个冗余端点的新数据库资源。我想配置 MultiDB,因此如果与第一个端点的连接失败,它将连接到第二个端点,如果需要,在放弃之前连接到第三个端点。

我尝试设置 resource.multidb.resourcename.host[] 但失败了。看起来它只会接受一个端点。

有没有办法配置回退?还是我需要扩展 Zend_Application_Resource_Multidb?

4

1 回答 1

0

老实说,我从未尝试过数据库应用程序的软件端(甚至不确定 zend 框架“本身”是否真的可能)回退。它有一个很好的理由:它只是错误的地方!

有几个绊脚石:

  1. 您如何设法在多个数据库之间保持数据的持久性?
  2. 如果一个数据库宕机了怎么办?

假设您使用的是 MySQL:您可能想看看 MySQL 本身的主从复制:16.1.1。如何设置复制

即使这样也可能会让您头疼(尤其是如果您必须迁移现有数据)。我目前对我之前遇到的几个项目的解决方案感到非常满意:不必为自己处理冗余而感到痛苦,只需将任务交给您的数据库/服务器本身!

到目前为止,我遇到的最简单的解决方案是在(与您的 Web 应用程序本身无关的)故障转移 vServer 集群上设置您的数据库。

如果我的回答与您的问题完全不符,我很抱歉……但这可能是一种不同方法的发人深省的冲动。

于 2013-03-15T08:40:58.880 回答