【问题标题】:Zend Framework and mysql slaves supportZend Framework 和 mysql slaves 支持
【发布时间】:2011-10-20 18:11:15
【问题描述】:

我正在寻找一种在 Zend Framework (1.1) 中管理数据库连接的通用方法。

我们的 ZF 应用程序托管在亚马逊云中,我们使用他们的 RDS 解决方案。添加只读副本服务器很容易,但是我们希望在我们的应用程序中添加对它的支持。我们正在寻找处理它的最佳和简单的解决方案。任何建议都会很棒。

我知道如何在Zend_Db_SelectZend_Db_Tables中的数据库连接之间切换,但我正在寻找一个尽可能集中和自动化的框架,所以我们不需要设置从属支持在每个查询/模型中。

我还阅读了有关 mysql 代理的信息,但我不想在我们的应用程序中引入另一个软件层。

【问题讨论】:

    标签: mysql zend-framework zend-db amazon-rds


    【解决方案1】:

    您真的在使用 ZF 1.1 吗?还是采埃孚 1.10/1.11?在后一种情况下,您可以使用Zend_Application_Resource_Multidb 来设置不同的数据库资源。

    如果您需要自动切换(负载平衡),有很多方法。我不知道 MySQL 的 LoadBalancers,但以编程方式,您可以在引导时将默认适配器随机切换到 multidbs 之一。然后您的应用程序使用每个请求一个随机数据库(如果您使用 Zend_Db_Table::getDefaultAdapter() / Zend_Db_Table::getAdapter())

    或者你创建一个自己的代理类来为你管理这个。有关您的环境和确切用例的更多信息可能会很有用。

    【讨论】:

      【解决方案2】:

      您可以只覆盖相关类并决定(读取或写入)将查询发送到哪个数据库。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-19
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多