加入收藏 | 设为首页 | 会员中心 | 我要投稿 辽源站长网 (https://www.0437zz.com/)- 云专线、云连接、智能数据、边缘计算、数据安全!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

数据库 – 通过http和json同步2个sqlite表的最好方法是什么?

发布时间:2021-05-22 19:03:24 所属栏目:MsSql教程 来源:网络整理
导读:我有一个相当简单的同步问题.我有一个大约10列的表,我想在3个不同的客户端上的一个sqlite文件之间保持同步:一个 Iphone客户端,一个浏览器客户端和一个Ruby on Rails客户端.所以我需要一个简单的系统解决方案,它将适用于所有3,即我可以轻松地在 Javascript,Ob

我有一个相当简单的同步问题.我有一个大约10列的表,我想在3个不同的客户端上的一个sqlite文件之间保持同步:一个 Iphone客户端,一个浏览器客户端和一个Ruby on Rails客户端.所以我需要一个简单的系统解决方案,它将适用于所有3,即我可以轻松地在 Javascript,Objective C和Ruby中实现它,并且它可以通过HTTP工作.我已经看过其他同步解决方案的各种组件,如git中的一些,Google齿轮社区中的一些教程,以及一个名为acts_as_replica的rails插件.我的天真的方法是简单地在数据库中创建一个最后同步的时间戳,然后创建所有删除的更改日志. (我不允许更新表中的条目).然后,我可以检索自上次时间戳以来的所有新条目,然后与删除文件相结合,并通过http在3个解决方案之间发送一个更改日志作为json.

我应该考虑使用SHA1哈希或每个条目的UUID还是最后同步的时间戳足够?如何确保没有重复条目?我可以遵循一个更简单的算法吗?

解决方法

我假设改变很可能是最后的.我不知道插入和更新的性质,但这是我的想法;

>我将SHA1(或MD5,在这种情况下无关紧要)当前月份和前几个月.与这些指纹相比,差异是一个快速的方法. (我今天离开了)
>如果前几个月有差异;

>如果一个月的音量太大,我们可以分割一个月,只需生成每日指纹,而不是比较整个月.
>否则,我们可以按照我们对待日常变化的方式来对待月度变化.

>在发现更改发生在哪里之后,主副本将发送该时间段的所有唯一身份验证码的列表. (始终发送今天的信息)
>奴隶然后删除必须被删除的内容,编译要插入的id列表.
>主人只发送那些记录(全部).

时间类别(日,月)可以根据数据量进行调整.

当然这是一个天真简单的算法.如果我正在处理敏感/关键数据,我会寻找一个transactional算法.

(编辑:辽源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读