线上线下同步

Wil*_*Adu 5 php mysql architecture

由于互联网不稳定,我正在做一个同步在线和离线功能的项目。我想出了一个可能的解决方案。即为在线和离线创建 2 个相似的数据库并同步两者。我的问题是这是一个好方法吗?或者有更好的选择吗?

我已经在网上研究过这个主题,但我没有遇到任何实质性的东西。我发现的一个有用的链接是关于数据库复制。但我希望离线版本能够检测互联网存在并相应地同步。

请你能帮我找到解决方案或线索来解决我的问题吗?

Tsc*_*cka 4

我建议您有一个用于同步的在线存储和一个本地数据库(浏览器indexeddb、程序sqllite或类似的东西),并将所有更改记录在本地数据库中,但记录上次同步后输入的数据。

当您有连接时,您可以按设定的时间间隔将所有新数据与在线存储同步(例如每 5 分钟一次,或者如果您有带宽/CPU 容量,则为恒定流)

当用户从“新”位置登录时,在线数据库将所有数据推送到客户端,客户端用数据填充本地数据库,然后恢复正常同步功能。