我们正在考虑为我们的主 MySQL 数据库设置复制,虽然设置复制看起来很简单,但应用程序的实现似乎有点模糊。
我的第一个想法是设置一个主从配置和 RW 拆分,所有写入查询 ( CREATE
, INSERT
, UPDATE
) 都进入主服务器,所有读取查询 ( SELECT
) 进入从服务器。在阅读了它之后,似乎基本上有两个选项可用于如何使用我们的应用程序实现这一点:
- 对所有 MySQL 连接使用独立的中间件层,例如MySQL 代理或DBSlayer。但是,前者在 Alpha 中,而后者的文档有限。
- 使用基于 Ruby 的 gem/plugin,例如Octopus在框架中实现 RW-splitting。
如果我们想采用主从设置,您建议继续进行哪些操作?
我的另一个想法是使用主-主配置,但不确定这种设置的实现。
想法?