gpt4 book ai didi

synchronization - 基于云的同步架构

转载 作者:行者123 更新时间:2023-12-04 12:56:14 25 4
gpt4 key购买 nike

我正在考虑构建一个基于云的同步解决方案(类似于 Dropbox):

  • 健壮的架构会是什么样子?
  • 您需要哪些技术来支持不同的平台
    像 windows、mac、linux 和移动设备?
  • 您会使用哪些有效的同步算法?

  • 我知道一个幼稚的架构/解决方案是:
  • 对您的云存储进行网络调用并获取同步文件夹
    树结构(只是元数据信息)。
  • 在客户端有一个文件系统监视器来构建本地同步
    文件夹树结构(我猜你会使用类似 lsyncd 的东西
    文件系统监视器?)
  • 从上一次同步中检索同步文件夹结构。现在轮到你
    在客户端上有 3 个文件夹树结构。使用这3棵树可以
    确定需要在本地文件夹上做什么以及需要做什么
    在服务器上的远程文件夹上完成。比如添加、删除、
    使用某种预先确定的规则进行编辑、冲突解决等
    那是特定于应用程序的。

  • 这种架构可能已经足够了,但问题在于细节。如果同步文件夹树非常大(非常宽且非常深)怎么办。显然,需要一种有效的算法来确定差异。如果网络连接断开并且您没有正确获取或发送整个树怎么办?还仅发送文件差异以减少网络负载等。

    我知道这些是我设计的东西,但我的问题是这种架构是否足够,我是否应该花时间在细节上? Dropbox 是如何设计的,它们使用哪些技术和算法来使大型文件夹结构和数据大小的同步如此高效?在设计这样的东西时,我可以引用任何资源/书籍吗?

    提前致谢。

    最佳答案

    一个好的起点是评估 Dropbox API了解他们如何设计 Dropbox API。这可能会为您提供有关如何使这些技术适应您的解决方案的想法。与任何同步解决方案一样,细节决定成败。

    -账单

    关于synchronization - 基于云的同步架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5288304/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com