在web应用程序中使用的休眠+弹簧+ AS400数据库:(多数据源),使用休眠+弹簧镜像数据
有3个数据源(每个区域一个),DS为澳大利亚,DS为英国和DS为美国。所有数据源中的模式都是相同的。
现在需要将数据持久保存到数据源中,规则是主要区域(由最终用户使用UI选择)应始终用作主数据源以保存数据。另外,如果主要地区不是美国(比如用户选择的英国地区),那么数据应该同时存在于英国数据源和美国数据源。
我知道一个简单的手动方法来打开所有会话工厂并手动管理所有内容。 http://www.java-forums.org/database/867-hibernate-multiple-databases.html
什么是其他替代品可用和最好的方式来实现呢?
不幸的是,我不能介绍JMS,但有仅在spring + hibernate上工作,并可能支持某些数据库驱动程序(如果可以确保将数据写入多个数据源)。分布式事务是一个更大的野兽。此设置的主要目的是将美国数据源作为所有持续数据跨越地区的超集。 (如果美国数据源存在问题,那么繁荣!!但是现在假设美国数据源具有高可用性并且支持故障转移以具有这样的问题) – sachink 2011-02-18 17:36:13