如何在多个设备之间同步数据



假设您正在编写一个许多客户端都使用的程序。一台服务器只能处理一定数量的连接。你需要处理的连接越多,你需要的电源就越多,直到你得到一个包含不同设备的服务器场。例如,如果您运行一个应用程序,不同的客户端可以在您的服务器上存储数据,那么如何同步每个设备上的数据?存在哪些硬件/软件解决方案?或者所有数据是如何存储的?

我可以建议手动创建程序,只使用文件系统,您可以在客户端和服务器之间交换文件,但服务器程序会,在一段时间内(例如每5分钟(向所有连接的客户端广播他的所有文件的列表,然后交换机将不得不等待(如果我们谈论的是大量文件(如果是小文件,则30秒或1分钟就足够了

有很多形式可以做到这一点。。。

我认为你需要有一个单一的真相来源,比如说(这个案例的服务器(。

然后,您可以拥有一个包含最新更改的增量版本(id(。

因此,每个设备只能轮询该数字版本,以了解是否是最新的。

如果没有,设备可以向服务器询问设备版本的更改。

每次设备进行更改时,该更改都会存储在服务器上,并且版本会递增。

这可以是一个基本的实现。如果您需要实时更新,您可以使用Sockets向该实现添加一些发布订阅通道。。。或者pusher.com 的一些类似服务的频道

因此,每次设备在服务器上进行更改时,您都可以在频道上发送一个通知,其中包含一些信息(更改(或versión的新ID,所有设备都可以通过更改(如果只有一个(更新信息,或者如果有很多更改(比如设备与互联网断开了一段时间(,则向服务器询问所有更改。

相关内容

  • 没有找到相关文章

最新更新