我正在研究Rails应用程序的高可用性数据库的主题。 我正在寻找基于开源的解决scheme。
目前我们的系统运行在一个应用程序主机+一个数据库主机,这意味着这两个任何一个下降我有麻烦。 我更喜欢这个configuration加倍,如果可能的话,在不同的网站上运行(但这不是要求)。
第一个想法是主动 – 主动复制,但似乎Postgresql在这方面很薄弱,MySQL也不稳固( http://www.mysqlperformanceblog.com/2007/03/15/mysql-myisam-active-active-clustering因为麻烦/ )。 我正在考虑一个VoltDB,这看起来像一个性感的话题,可以像Rails一样使用。
日志共享似乎是一个不错的主意,但我对这个概念很新,我想知道这种解决scheme的成本,以及如何。 MySQL将会使用它。 而且它排除了我猜想在两个不同的站点运行应用程序的任何方式。
我真的可以在这里使用一些技巧,所以随时提出问题,并提出解决scheme。 我将编辑这个post来添加任何必要的信息。
你可以使用HaProxy。
您可以将Haproxyconfiguration为故障转移,复制或负载平衡器
http://www.alexwilliams.ca/blog/2009/08/10/using-haproxy-for-mysql-failover-and-redundancy/
VoltDB原生支持HA,我们实际上希望人们在一个商品服务器集群上运行它。