我们正在更换旧系统。两个应用程序一起运行将会有一段时间。用户将能够使用任一系统,而挑战是能够保持他们的数据库彼此同步。应用程序数据同步 - 与旧版一起运行新应用程序
新系统是ASP.NET,遗留的是VB6。两者都在SQL Server数据库上运行。目前还不清楚数据库是否在同一个服务器机房,更不用说同一个国家。
桌子上的两种解决方案到目前为止是:坐每台机器上,并通过其他应用程序调用
- Web服务。
- 需要修改本地对象的基类(es?)上的Save方法。这是侵入性的,并且在关闭它时可能会成为问题。
单个窗口服务,用于轮询每个数据库并计算出发生了什么变化,并根据需要转发适应的更新。
- 需要更改这两个应用程序中的模式以确保它们在所有表上都有LastModified(DateTime),因此我们可以在任何给定的时间间隔执行一次定期SELECT。
这两种解决方案看起来都是合理的。两种解决方案都有优点和缺点。该业务要求在更新一个系统和在另一个系统中看到它之间不超过2秒的延迟(!)。这可能是一个伸展目标,但这是目标。已建议,但拒绝
其他(我愿意重新考虑)是:
- 数据库触发器(blugrh)
- 的BizTalk或其他总线(看起来像一个大锤,是太复杂切换解决方案)
- 修改所有的存储过程(NOOOO。)
- SSIS(不知道有足够的了解这个还)
欣赏你可能有的任何想法。
编辑:模式完全不同。
模式是完全不同的,所以会有数据转换。 – 2008-11-07 16:09:47