我遇到了一个问题陈述,它需要应用程序的离线同步功能。在这种情况下,用户将在提供的表格中填写数据,并且可能有也可能没有可用的网络。每当他进入网络时,客户端都应该同步数据。可以有两种类型的服务器,一种是卫星服务器,它可以临时存储或临时存储表格中填写的数据,这可能位于互联网或内联网中,因此客户端第一步会将数据推送到该服务器,然后就会有Azure 或 AWS 中的云服务器将成为最终的事实来源,数据最终将在此处同步。
应用程序将位于 MEAN Stack 中,由于 NoSql 不遵循 ACID 属性,我如何确保 NoSql 世界中的数据完整性。换句话说,我如何确保每次同步发生时都会发生在某个检查点,如果没有发生则回滚?由于是企业应用,数据量会很大。
沙发数据库或袋数据库或任何其他数据库也不是一个选项。它要么是 mongo,要么是 Azure 的 DocumentDB。
最佳答案
您是否有可能以所有相关部分都在一个文档中的方式设计架构,如“MongoDB is ACID-compilant at the document level” '。您可以use write concern to specify the degree of consistency (请参阅“MongoDB 支持 ACID 事务吗?”)。
关于node.js - NoSql 与远程服务器离线同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43628020/