我们有一个主/从 MySQL 设置,我们希望将一些读取拆分到从属服务器。
基本上,我们希望它这样设置:
- 所有写入都将使用 master 进行
- 任何需要在写入后立即访问的读取都将使用 master
- 所有其他读取将有利于从站
- 如果slave宕机了,所有的读取都应该使用master
现在我们有一个扩展 Zend_Db_Adapter_Pdo_Mysql 的自定义 DB_Adapter。我正在考虑做的只是在 config.ini 文件中设置另一个变量,该变量使用 read_only 凭据集向从站进行身份验证,然后在引导程序中使用实例化第二个 DB_AdapterZend_DB::factory($config->slaveDatabase);
我还遇到了 Zend_Application_Resource_Multidb。与仅创建第二组变量相比,为此使用 Multidb 资源有什么优势吗?
是否有任何方法可以设置故障转移,以便如果从服务器关闭,任何使用它的读取都将使用主服务器?