我的Azure Sql数据库位于西欧,并且正在考虑在美国也有一个数据库。在各州部署我的网站很容易,但是这个网站随后在欧洲查询数据库,这会造成延误。
人们在这些案件中做了什么?我猜想为不同的用户提供单独的数据库,但如果通常在一台服务器上的用户被路由到另一台服务器,那么它就会失败,那么他的数据就不在数据库中了。是否有简单的解决方案可以在两个azure SQL服务器中提供相同的数据,Azure是否保持数据同步?同步时的冲突怎么样?
答案 0 :(得分:1)
这实际上取决于您的要求以及如何实施路由。您可以以用户A的方式设计分布式应用程序,例如,经过身份验证后,用户A将转到美国服务器。即使他/她目前在欧洲或亚洲。
如果您想在任何地方同步所有内容,那么会有一个名为“SQL Data Sync”的预览功能。它可以在多个SQL Server实例之间同步数据(包括本地SQL Server安装)。它在配置和同步选项方面非常灵活。但同样,它实际上取决于应用要求。如果我正在构建分布式系统,我不会跨大洲同步数据。将设计应用程序,以便用户特定数据仅存在于一个数据中心中。如果我的用户可以访问更多与他/她的个人资料相关的数据,那么这当然是不可能的。
最佳选择是将用户特定数据保存在用户指定的数据中心内,并同步所有位置所有用户必须可用的数据。