实时跨多个设备同步数据

时间:2016-09-16 16:10:01

标签: android

我在构建移动应用程序方面相对较新,但我是一位经验丰富的Web开发人员。

假设我正在构建一个待办事项列表应用。 Android用户可以创建列表并使用项目填充它们。列表及其内容将通过Realm DB保存在设备上。

某些列表可以与其他人“共享”。列表的修改将实时显示在列表上进行协作的所有用户。

我计划有一个存储列表,用户信息等的在线服务器。话虽如此,将我的移动应用程序注册到与服务器的“Web套接字”接口以获取实时数据库是相对微不足道的同步?

我认为这可以通过像MySQL或PostgreSQL这样的关系数据库在服务器上保存数据来实现,并在数据库发生变化时提供JSON有效负载。

让Android应用程序监听来自服务器的更改,有点像网络套接字吗?我知道我必须管理冲突,网络可用性等。

2 个答案:

答案 0 :(得分:1)

我建议您使用Firebase。由于实时同步非常简单。由于它将最新更新的数据存储在设备上,因此您不必担心服务器端发生的数据更改。当它连接到互联网时,它会自动同步最新数据并将其存储到离线存储中。它以json格式存储数据

答案 1 :(得分:0)

如果许多移动应用程序在客户端 - 服务器模型中运行以与中央存储库交换数据,则需要将数据与服务器同步。

如果服务器通过REST API提供资源,则可以在客户端处理所有同步逻辑。 同步逻辑能够处理中央服务器和多个客户端之间的双向同步,其中只有增量更改适用于双方并且存在一些冲突检测。

http://havrl.blogspot.in/2013/08/synchronization-algorithm-for.html