类SVN的多平台数据同步系统服务器端设计

来源:互联网 发布:死或生5mac 编辑:程序博客网 时间:2024/06/06 04:29

话不多说,直接上表。原文链接

数据结构表 : (a => 增加 , u => 更新 , r =>删除)

ID操作类型数据(文件名/字段名称等)版本号其他字段…… afile111  ufile211  rfile311 ............... rfile122  ufile222  afile322 



算法:

对于某个文件 fileN 的更新方法:

设 客户端的文件版本号 为 clientVersion ,服务器上最高版本号为 maxVersion。 

     opt1 = fileN 在 (clientVersion , maxVersion] 之间的"版本号"最小的一条数据的“操作类型”;

     opt2 = fileN 在 (clientVersion , maxVersion] 之间的"版本号"最大的一条数据的“操作类型”;

然后,除 (opt1 == null && opt2 == null) || opt1 == opt2 之外的情况,有此口诀:

opt1opt2resultauaarnulluauurrra/uu



钦此。


好吧。。我承认上面在写天书。。这段是对公司的同步系统设计构想,可太过麻烦,所以没用,记录在这,有朝一日,万一又要搞呢。。。



原创粉丝点击