问题标签 [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.
windows - 在 XP 上,同步文件和文件夹的最佳方式
我正在使用 SyncToy 1.4,它可以满足我的需要,除了:
- 它无法处理系统之间分配的驱动器号更改(例如同步 USB 驱动器),
- 它将自己的(隐藏的)文件留在正在同步的文件夹中(这是 OS/FS 的限制吗?),
- 它为已删除的文件夹重新创建空文件夹,
- 它会同步已从同步中取消选择的文件夹中的新子文件夹
- 有时会发现所有文件都已更改,而它们仍然与原来相同。
- 它无法处理很长的文件路径/名称
SyncToy 2.1 太慢而无法使用。特别是在没有任何更改的文件夹上再次运行时,它将从头开始扫描所有文件和子文件夹以查找差异。
它必须是一个不使用基于 Internet 的存储的解决方案,因为这并不总是可用的,否则可能会太慢。我更喜欢不会将自己的文件添加到要同步的文件夹中的东西,以及可以快速轻松地更改文件和文件夹同步选择的东西。运行时交互性越少越好,理想情况下,只需单击几下鼠标就可以安全地同步多个文件夹对(就像 SyncToy 一样)。
我必须使用 rsync 和批处理文件吗?带有GUI的东西可以让奶奶轻松使用,会更好。这是我的标准:
不需要 Internet 连接。
它不能在源或目标中创建它自己的管家文件/文件夹(也许因为 NTFS 的缺点而必须这样做?)
测试:具有两个非空子文件夹 A 和 B 的源文件夹。将子文件夹 B 移动到子文件夹 A 中,它是否在目标文件夹中复制了这个?
测试:重命名子文件夹 A 中的文件,它是否在目标文件夹中重复?
只需单击一两次鼠标,是否可以同时完成多个文件夹对同步?
它是否具有预览即将进行的更改的选项?
它是否允许轻松更改源和/或目标路径?
它必须很快,(特别是如果重新扫描两个文件夹树而没有任何改变)。
测试:在 PC 1 上同步 USB 驱动器,然后将文件和文件夹从 USB 驱动器复制到 PC 2,在 PC 2 上更改文件夹和文件(PC 1 上的文件夹和文件保持不变),在 PC 2 上同步 USB 驱动器,然后重新同步USB 驱动器中 PC 1 上的文件和文件夹。它可以做到这一点而没有任何错误吗?
不包括安装,奶奶用起来舒服吗?-->
unix - 同步全球大量数据的最佳方式是什么?
我有大量数据要在全球 4 或 5 个站点上保持同步,每个站点大约 0.5 TB。这种变化(添加或更改)每天大约 1.4 GB,并且数据可以在四个站点中的任何一个站点发生变化。
很大一部分(30%)的数据是重复的包(可能是打包的 JDK),所以解决方案必须包括一种方法来识别本地机器上存在这样的东西并取而代之从另一个站点下载。
版本控制不是问题,这不是代码库本身。
我只是感兴趣是否有任何解决方案(最好是开源的)接近这样的事情?
我的使用 rsync 的婴儿脚本不再那么简单了,我想做更复杂、更智能的同步。
谢谢
编辑:这应该是基于 UNIX 的 :)
synchronization - 如何同步两个进程?
我有一个硬件接口,我想在同一个工作站上的两个应用程序(进程)中使用。硬件需要一个初始化调用,然后任何一个应用程序都使用相同的函数(在同一个库中)与硬件进行许多事务。
所以每个应用程序都应该像这样:
我可以在两个应用程序之间共享的锁和引用计数调用中使用什么机制?我正在考虑命名管道,即 mkfifo()。
c++ - 单线程两个进程
我有两个 C++ 进程(A 和 B),在 Windows 下执行,一个启动另一个。我想有效地单线程执行它们。例如:
- 启动过程 A
- A创造B
- A 暂停
- B 执行一些固定的操作
- B暂停,A恢复
- A 执行一些固定的操作
- A暂停,B恢复
- (重复 4 - 7)
哪种 Windows 同步和 IPC 服务最适合实现此类行为?
java - 在同一个对象上同步两次?
我想知道如果我在同一个对象上同步两次,在 Java 中是否会出现任何奇怪的行为?
场景如下
两种方法都使用对象并在其上同步。第二种方法被第一种方法调用时会因为被锁定而停止吗?
我不这么认为,因为它是同一个线程,但我不确定可能会出现任何其他奇怪的结果。
mysql - 如何同步开发和生产数据库
你知道同步两个数据库的任何应用程序吗?在开发过程中,有时需要添加一两个表行或新表或列。通常我在某个文件中编写每个 sql 语句,并且在上传路径期间,我在我的生产数据库中删除这些行(之前备份它)。我使用 mySQL 和 postreSQL 数据库。
你的做法是什么,哪些应用程序可以帮助你。
java - 为什么 notifyAll() 在 Integer 上同步时会引发 IllegalMonitorStateException?
为什么这个测试程序会导致java.lang.IllegalMonitorStateException
?
结果:
blackberry - 移动应用程序的服务器端同步或客户端同步
如果移动应用程序需要从多个服务器获取数据,是从移动设备调用每个服务器更好,还是调用一个服务器然后与所有其他服务器通信?
“应该由服务器发起同步还是由移动客户端发起?” 客户记账到什么程度。
说明在这两种情况下应用程序是移动电子邮件还是语音邮件客户端。
.net - 应用程序数据同步 - 与旧应用程序一起运行新应用程序
我们正在更换旧系统。这两个应用程序将在一段时间内同时运行。用户将能够使用任一系统,挑战在于能够保持他们的数据库彼此同步。
新系统是 ASP.NET,旧系统是 VB6。两者都在 SQL Server 数据库上运行。目前还不清楚数据库是否会在同一个服务器机房,更不用说同一个国家了。
到目前为止,桌面上的两个解决方案是:
- 位于每台机器上并由其他应用程序调用的 Web 服务。
- 需要修改本机对象的基类上的 Save 方法。这是侵入性的,并且在关闭它时可能是一个问题。
一个单一的 Windows 服务,它轮询每个数据库并计算出发生了什么变化并在适当的时候转发适应的更新。
- 需要更改两个应用程序中的模式以确保它们在所有表上都有 LastModified (DateTime),以便我们可以在任何给定的时间间隔执行定期 SELECT。
这两种解决方案似乎都是合理的。两种解决方案各有利弊。企业要求在更新一个系统和在另一个系统中看到它之间延迟不超过 2 秒(!)。这可能是一个延伸目标,但它是一个目标。
其他被建议但被拒绝的(我愿意重新考虑)是:
- 数据库触发器 (blugrh)
- BizTalk 或其他总线(看起来像一把大锤,对于切换解决方案来说太复杂了)
- 修改所有存储过程 (noooo.)
- SSIS(对此还不够了解)
欣赏你可能有的任何想法。
编辑:注意架构完全不同。
.net - Microsoft Sync Framework 查询性能
我们正在开发一种产品,该产品依赖于 Microsoft Sync Framework,以使客户端应用程序和服务器上的数据保持同步。我们注意到,当同步大约 16 个表和约 2200 条记录时,大约需要 4 分钟,这是不可接受的。
使用 SQL Server Profiler,我们发现它使用 sp_executesql 来执行查询。在没有 sp_executesql 的情况下运行时,特定查询会在 <1 秒内运行,但需要 10 秒以上。
所以问题是:我们做错了什么,我们可以做些什么来加速它。