问题标签 [data-synchronization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
906 浏览

.net - 同步 2 .net 应用程序

早上好/下午/晚上好!

有 2 个系统 - CRM (customized SplendidCRM) и home-brewedmonster (crm+cms+backoffice)。

  1. CRM - Asp.Net 2.0 网站,Sql Server 2008;使用视图、存储过程、触发器实现;例如审计被实现为触发器+SP;网站是一个简单的用户界面;Ado DataSets 用作 Dtos
  2. 自酿怪物 - Asp.Net 3.5 WebApplication,SqlServer 2008;使用 ListToSql 实现;Sql Server 仅用作存储;在 C# 代码中实现的所有逻辑和审计;VS 的设计器生成的类用作 Dtos。

我需要在它们之间实现“双工”同步:

同步应该在“几乎实时模式”下工作——延迟是可以接受的。数据不多——目前大约有 35000 个对象和 120000 个审计条目,最多可以有 100000 个对象。对象也不是很大(数据库中有 60 列)。

对于这两个系统,都有一个允许更新的 Api:用于 Crm 的 Web 服务和用于自制怪物的 Wcf 服务。由于怪物的实现更改只能通过 Wcf 服务应用(例如,用于审计工作)。至于 Crm - 它可以通过 Web 服务调用或直接 SP 调用来更新(但最好使用 Web 服务)。

目前,Crm 中有一个包含对象外部 ID 的列,并且需要一种同步但更强大和更专业的解决方案。

由于某些原因(管理员失败或应用了错误的更新),两个系统都可能“脱机”。这不应该影响同步 - 系统恢复后应立即应用所有更新。重要的是,来自自制怪物的数据具有更高的优先级,并且应该覆盖来自 Crm 的更改。

问题是哪种技术/库更好用?如果可以将同步“从系统中取出”,那就太好了(系统会触发数据已更改的事件,而外部工具会同步更改)。这是由于系统和同步规则经常发生变化 - 例如,同步的第一个“版本”在某些情况下从 Crm 中删除对象,第二个版本没有删除但导出的数据更少,在“第三版”中更多一些添加了两个系统共有的字段。此更改将在将来出现,因此我不想触及其他系统(或非它们)并仅更改同步规则。

0 投票
1 回答
572 浏览

ajax - 当数据对客户端来说太大时,在不可靠的客户端和服务器之间同步数据结构

概括:

如何与无法将所有数据保存在内存中并不断断开连接的客户端同步大量数据?

解释:

我有一个实时(ajax/comet)应用程序,它将在网络上显示一些数据。我喜欢将其视为 Web 上的视图和服务器上的模型。

假设我在服务器上有大量记录,所有这些记录都一直在添加/删除/修改。以下是问题:

- 这是网络,客户端可能有很多连接/断开连接。当客户端断开连接时,数据可能已被修改,重新连接时需要更新客户端。但是,由于数据太大,每次重新连接时都无法向客户端发送所有数据。

- 既然有这么多数据,客户端显然不能全部发送出去。想想拥有数千条消息的 gmail 帐户或带有……整个世界的谷歌地图!

我意识到最初会向客户端发送一些相关数据子集的完整快照,然后只会进行增量更新。这很可能通过某种序列号来完成……客户端会说“我收到的最后一个更新是#234”,客户端将发送#234 和#current 之间的所有消息。

我还意识到客户端视图会通知服务器它正在“显示”记录 100-200 “所以只向我发送那些”(可能是 0-300,无论策略如何)。

但是,我讨厌自己编写所有这些代码的想法。有一个足够普遍且足够普遍的问题,即必须已经有库(或至少是逐步的食谱)。

我希望在 Java 或 node.js 中执行此操作。如果有其他语言的解决方案,我愿意切换。

0 投票
1 回答
2462 浏览

android - 从设备sqlite到服务器的Android数据同步

在我的应用程序中,我有两个数据管理源,一个通过 Web 服务,另一个在设备本身的 SQLite 数据库中备用。在此,如果 Web 服务可用,我想添加将数据从设备传输到服务器以及从服务器传输到设备的功能。请建议执行此实施的最佳方法。

0 投票
1 回答
8877 浏览

android - Android实用程序将sqlite db发送到服务器

在我的应用程序中,我想将存储在本地 sqlite 数据库中的数据发送到服务器的 sqlserver 数据库。android 是否有任何实用程序可以直接发送 .db 文件并读取服务器中的内容。编写多个插入语句会使代码非常冗长,并且会导致主键冲突。请帮忙。

0 投票
4 回答
11476 浏览

objective-c - 在 iOS 应用程序之间同步数据有什么好的解决方案?

我正在开发一个应用程序,它的数据管理是通过 Core Data 实现的,我正在研究如何实现一个功能来同步两个不同设备之间的数据(甚至最终在 iDevices 和 Mac 之间)。

到目前为止,我还没有发现任何有趣或有用的东西,所以我要求您提供一个好的起点、指南或可遵循的模型。你有没有意识到这样的事情?

更新

我已经开始在这个问题上悬赏。在 iOS 上同步可能是一项艰巨的任务,但是来吧,有很多应用程序提供设备到设备的同步功能。我的问题是:他们是怎么做到的?最好的方法是什么?有哪些不同的解决方案?

更新 2

这个问题现在肯定已经过时了,因为 iCloud 已经发布了将近一年。我想让它保持活力,因为它可以为设备之间的移动数据同步提供有趣的见解。

0 投票
2 回答
3258 浏览

php - SQL 数据库同步

我们正在使用 PHP 和 Symfony 框架开发一个应用程序。理想情况下,该系统将在远程服务器上运行,以便可以在任何地方在线使用。但是,也必须有离线可用性。

为此,系统将同时在远程服务器和本地服务器上运行。默认情况下,客户端将访问本地服务器,并且仅在设施外在线工作。

因此,我们需要为本地和远程数据库上的更改实现数据库同步,而无需任何类型的客户端交互。如果可能的话,它应该是一个后台运行的守护进程,同步数据库。主数据库将是本地数据库,因此它将优先处理任何冲突。

我们还没有决定要使用的数据库系统(我们正在使用 Doctrine,所以任何支持的数据库都可以),所以我们真的在寻找最适合我们场景的解决方案。

该解决方案可以是专用应用程序,无论是否商业化,只要它不需要客户端交互即可。

0 投票
3 回答
3867 浏览

sql-server-2008 - 从 sql-server 到另一个数据存储库的实时单向同步

在我之前关于此门户的问题中,我询问了有关在 SQL Server 和基于键值的数据存储库之间同步数据的一些见解。

代替相同的问题(从 SQL 到 HBase 或任何其他数据库的单向实时同步),我需要注意一些性能和延迟考虑,并且没有找到一种非常简单的方法来做到这一点。

  1. 我们有多个 SQL 2008 数据分片,其中数据从各种来源更新并由多个进程同时处理(并且 UI 从相同分片读取)。

  2. 目标是在任何时间点获取选定表中的所有更新,并以几乎实时的方式将它们传输到其他数据源。

  3. SQL 分片的变化量将保持在 100-500 MB 范围内(如果我们保持 1 分钟的频率)。我们不想对 SQL 服务器进行重大更改,因为我们会在迁移完整系统后丢弃它。

  4. 不幸的是,我们的数据访问层在各个层都搞砸了。否则,这将是从两个方向分叉更新的最佳方式。

  5. 触发器会减慢分片的速度并使它们处于无响应状态。

  6. 不确定 SQL Server 2008 是否具有类似于 SQL Server 2005通知服务的功能,以及它的效果如何。

任何其他创新解决方案都会大有帮助。

这里我的问题不是将数据从关系形式转换为键值形式(这很容易),而是如何在不影响用户体验的情况下实时获取 SQL Server 更新(可以承受 1-2 分钟的延迟) .

0 投票
2 回答
11518 浏览

ftp - 配置 Aptana FTP

我想配置 Aptana 以显示我仍然需要上传的文件。在 Aptana 中是否有类似的选项?假设我在本地对一些文件进行了更改并对其进行了测试。但有时我忘记将它们通过 FTP 传输到服务器。aptana 是否足够聪明来证明这一点。如果我的服务器是安装了一些插件的 SVN 存储库,我知道它会。但如果服务器不是 SVN 或 CVS 存储库?

谁能帮我这个?

谢谢,穆拉利。

0 投票
2 回答
584 浏览

c# - 单数据库多用户桌面应用

我是这个概念的新手,所以我需要指导在以下情况下最好使用什么。

我必须制作一个包含许多功能的桌面应用程序,例如parts StockEmployees DataCompany Cars Data

现在的问题是许多用户将使用该应用程序,并且位于安装该应用程序的不同城市的办公室。

我想要一个方案,如果一个人将任何数据上传到数据库,其他人会得到它的反映,而其他人会立即得到更新。例如,如果添加了更多的汽车,每个人都使用更新他们的汽车列表。

我有使用的想法webservices,数据应该存储在网站数据库的某个地方,以便每个人的应用程序每隔 20 秒左右刷新一次列表。

任何帮助表示赞赏

0 投票
2 回答
8952 浏览

cocoa - 您可以将 CoreData 与 iCloud 同步吗?

有谁知道是否以及如何将 CoreData 应用程序与 iCloud 同步?如果我正确理解 Apple iCould 的说明,您不能同步 CoreData,可以吗?