我一直在研究一种方法,用于在多个设备(如iPad或Mac)之间同步存储在iPhone应用程序中的核心数据.在iOS上使用Core Data的同步框架并不多(如果有的话).但是,我一直在考虑以下概念:
我需要考虑什么花哨的东西吗?我查看了REST框架,例如ObjectiveResource,Core Resource和RestfulCoreData.当然,这些都与Ruby on Rails一起使用,我并不依赖它,但它是一个开始的地方.我对我的解决方案的主要要求是:
我考虑过一些挑战:
还有什么我在这里失踪的吗?我应该考虑哪些框架才能实现这一目标?
我觉得必须有客户端 - 服务器同步模式.但我完全没有谷歌一个.
情况非常简单 - 服务器是中心节点,多个客户端连接并操作相同的数据.数据可以在原子中分割,如果发生冲突,服务器上的任何内容都具有优先级(以避免让用户解决冲突).由于可能存在大量数据,因此首选部分同步.
对于这种情况是否存在任何模式/良好实践,或者如果您不知道 - 您的方法是什么?
以下是我现在想要解决的问题:与数据并行,将保留修改日志,使所有交易都有时间戳.当客户端连接时,它会以统一的形式接收自上次检查以来的所有更改(服务器遍历列表并删除添加后跟随删除,合并每个原子的更新等).瞧,我们是最新的.
备选方案是保留每条记录的修改日期,而不是执行数据删除,只需将它们标记为已删除即可.
有什么想法吗?
我正在使用本地数据库(使用html5 webstorage)开发移动Web应用程序(用于iPhone和Android),因此当用户离线时我的应用程序仍然可用.
这工作正常,但我想将本地数据保存在服务器上.所以我需要将本地数据库与服务器上的数据库同步.同步只能是一种方式,但在将来,我想以两种方式同步它(服务器< - >本地数据库).
这种需求看起来非常普遍(或者将来在移动网络应用程序中很常见),但我找不到这样做的库.
我知道谷歌正在他们的移动网络应用程序(例如gmail)中这样做,我发现WSPL项目是一个谷歌项目,但没有下载源.
如果我找不到解决方案,我会创建一个库来做到这一点,因为单向同步看起来并不困难,但我想知道是否还有其他解决方案.
我正在寻找一些将中央服务器上的数据与不总是在线的客户端应用程序同步的一般策略.
在我的特定情况下,我有一个带有sqlite数据库的android手机应用程序和带有MySQL数据库的PHP Web应用程序.
用户将能够在电话应用程序和Web应用程序上添加和编辑信息.我需要确保即使手机无法立即与服务器通信,在一个地方进行的更改也会反映在任何地方.
我不关心如何将数据从手机传输到服务器,反之亦然.我只提到我的特定技术,因为我不能使用MySQL可用的复制功能.
我知道客户端 - 服务器数据同步问题已经存在很长很长时间了,并且希望获得有关处理问题的模式的信息 - 文章,书籍,建议等.我想知道处理同步的一般策略,以比较优势,劣势和权衡.
sql database design-patterns client-server data-synchronization
我目前正在使用所有html5好东西编写离线webapp以获得离线支持.但是,我现在开始考虑编写同步模块,以确保将任何脱机数据发送到服务器并将服务器数据发送回客户端.现在我确信这已经完成了,我的意思是它是一个非常经典的设计问题,影响移动设备和其他许多东西.所以我想知道有人能指出我为这种事情提供一些好的设计资源吗?
现在我真的不需要过于复杂,我的意思是我没有处理多个用户访问相同的数据,我很高兴不合并冲突(只需要采取最新的)但我仍然希望设计能够请允许我将来使用这些选项.
还有,有没有任何开源项目实现这种类型的东西?我不会扯掉其他人的代码(如果许可证允许的话),我很乐意移植.
我的要求是我有服务器J2EE Web应用程序和客户端J2EE Web应用程序.有时客户端可以脱机.当客户端上线时,他应该能够来回同步更改.此外,我应该能够根据某些过滤器/规则控制哪些行/表需要同步.是否有任何现有的Java框架可以做到这一点?如果我需要自己实施,您可以提出哪些不同的策略?
我想到的一个解决方案是在同步期间维护sql日志并在另一端执行相同的语句.你觉得这个策略有什么问题吗?
我正在阅读Peter B. Galvin的"操作系统概念中的关键部分问题".根据它
1)进度是:如果没有进程在其关键部分执行,并且某些进程希望进入其关键部分,那么只有那些未在其余部分中执行的进程才能参与决定哪个进程将在下一个进入其关键部分,选择不能无限期推迟.
和
2)有界等待是:在进程请求进入其关键部分之后且在该请求被授予之前,允许其他进程进入其关键部分的次数存在约束或限制.
我不理解作者想要在两种情况下说什么.
您能否通过提供与此定义相关的适当示例来让我理解.
谢谢.
synchronization operating-system critical-section thread-synchronization data-synchronization
我正在研究构建一个与在线工作一样离线的应用程序.由于应用程序在脱机时无法与服务器通信,因此需要进行某种程度的同步.
在计划iPhone同步的离线操作时,有哪些好的工具可供阅读并开始考虑?
我必须自己创建哪些工具,而不是苹果已经提供的工具来帮助解决这个问题?
我计划实现一个应用程序,我已经到了一个我不知道什么是最好的方法的点.
场景:
我有一个应用程序,我正在制作待办事项列表,我正在添加3项.我用我的手机.然后我拿起我的平板电脑,并希望继续添加另一项任务.过了一会儿,我带着妻子的电话想要添加2个新任务.
基本上我想要一个非常简单的方法来在线存储任务,并能够与应用程序同步.
我看到两种可能的方式:
有一个带有数据库+ Web服务调用的Web服务器.这样做的缺点是让主机付费,学习一些额外的mysql + Web服务技术.
以某种方式存储云上的数据,并通过登录允许应用程序访问存储该文件的帐户.我在想像Google Drive/Dropbox这样的东西.但我不知道如何只能同步更新的值,而不是整个文件.因为我在想,如果我将所有任务存储到一个文件中,每次更新文件时,我都需要完全上传它,这不是最好的方法.
我对任何建议持开放态度.你会推荐什么方法?
我有一个主django服务器存储数据(mysql数据库).
在线:我希望很多用户能够在他们的笔记本电脑上同步这个数据库的副本(只能复制delta)(sqlLite DB)
脱机(用户无权访问主服务器):用户可以查看和更新其本地数据库.
返回在线:已在用户笔记本电脑上修改的内容将同步回主django服务器.
我认为,由于我有两种数据库,我需要在django对象级别进行同步.是否有django应用程序这样做?如果没有,你将如何编写这样的功能?