2012-01-25 48 views
0

我正在查找支持同步复制和故障转移的数据库。自动故障转移将是理想的,但手动故障转移是可以接受的。我也更喜欢可以捆绑Java应用程序的东西。哪些数据库支持同步复制(Java/embeddable首选)?

H2 looks like it might work使用聚类/高可用性模式。我的设置将是低容量(< 10个并发用户,最少数据)和局域网(低延迟),但需要使用一致的数据进行快速故障切换。

我应该看看有没有其他数据库?我应该探讨其他任何类型的解决方案吗?我遇到过DRBD,CouchDB,Terracotta等类似的东西,但它们看起来像是我需要的东西(专为高容量工作负载而设计)。如果有人能够为他们中的任何人提供帮助,我会再看一次。

编辑:为了澄清,我想要一个可嵌入的数据库来简化开发/测试,但会在客户端/服务器模式下运行它以促进故障转移。

+1

我看不到你会怎么做嵌入式数据库*有*的故障切换。如果嵌入式数据库出现故障,您的应用程序也会崩溃(因为它是单个进程)。那么,您如何计划对不再运行的应用程序进行“故障切换”? –

+0

@a_horse_with_no_name我编辑了我的问题来澄清。如果需要,我会在客户端/服务器模式下运行它。在嵌入式模式下运行对我来说不像在我的应用程序中嵌入(捆绑)数据库服务器那么重要。 –

回答

1
+0

虽然这是异步的,但可以使用日志复制。这使我有可能失去我希望避免的交易。 –

+1

Derby也支持两阶段提交。因此,您可以通过在XA事务中更新两个数据库来在应用程序级别实现此功能。然后,提交将不会成功,除非两个数据库都更新。 –

相关问题