我目前的开发项目有两个方面。首先,有一个公共网站,外部用户可以在其中提交和更新用于各种目的的信息。然后,此信息将保存到 colo 设施的本地 SQL Server。
第二个方面是内部应用程序,员工使用它来管理这些相同的记录(概念上)并提供状态更新、批准等。该应用程序托管在公司防火墙内,具有自己的本地 SQL Server 数据库。
这两个网络通过硬件 VPN 解决方案连接,这很不错,但显然不是世界上最快的东西。
这两个数据库相似,并且共享许多相同的表,但它们不是 100% 相同。两边的许多表都非常特定于内部或外部应用程序。
所以问题是:当用户更新他们的信息或在公共网站上提交记录时,你如何将这些数据传输到内部应用程序的数据库中,以便内部人员进行管理?反之亦然……您如何将员工所做的更新推送回网站?
值得一提的是,这些更新发生得越“实时”越好。并不是说它必须是即时的,只是相当快。
到目前为止,我已经考虑过使用以下类型的方法:
- 双向复制
- 双方的 Web 服务接口都带有代码,以便在更改发生时(实时)同步更改。
- 双方的 Web 服务接口带有异步同步更改的代码(使用排队机制)。
有什么建议吗?有没有人遇到过这个问题?您是否提出了适合您的解决方案?