使用Microsoft Sync的云数据库(WCF)或偶尔连接的架构?

时间:2011-07-09 17:42:37

标签: .net database wcf cloud occasionallyconnected

我正在研究.NET 4 Winforms应用程序,我在确定处理数据库的最佳方法时遇到了问题。我们希望提供一个云数据库系统,其中应用程序可以通过WCF服务与“云”进行通信,并且基本上与连接到本地数据库(本地SQL Express,服务器上的SQL Server 2008 R2)相同。

我们看到两个选项:

1)使用WCF并对云数据库进行所有调用 2)使用本地数据库并使用Microsoft Sync Framework保持云同步

我们最终将拥有一个Web应用程序,它也将使用云数据作为用户的另一个前端。

困境显然是要使用的。如果我们使用选项1,那么我们不必在使用软件的任何地方安装SQL Express,例如公共位置,并且可以将用户的数据下载到该数据库。 WCF选项允许所有数据保持中心。

我们最终会在手机中弃牌,因此iPhone,iPad和Android也可以与云同步。

我对您对严格云数据库选项与偶尔连接选项的意见感兴趣,即数据库是本地的,同步到云。

谢谢。

1 个答案:

答案 0 :(得分:0)

如果您想允许离线/偶尔连接方案,为什么不根据需要简单地选择选项1)和2)?如果您通过WCF使用相同的n层架构来访问数据库而不管它在哪里(云或本地数据库),您的代码将始终相同,唯一的区别是偶尔连接的应用程序将同步数据(也可能是通过WCF)。

同步与直接访问的一个问题是,它不是实时的,即其他用户将访问和更新数据,您通常必须考虑如何处理冲突等。如果没有实际需要(有时连接是主要原因)对于offine功能,我会选择1)。从上面还不清楚你要存储什么类型的数据,如果它是用户特定的以及数据的大小,但是当使用同步时,尤其是在安全性和性能方面,这些都是非常真实的问题。 / p>

如果您可以提供有关解决方案准确内容的更多信息,也可以提供帮助。