azure - 自动将 Azure Blob 同步到本地文件系统

标签 azure synchronization filesystemwatcher azure-blob-storage

我想知道是否有一种方法可以将 Azure blob 自动同步到本地文件系统,以便每当将 blob 添加到容器时都会触发一个事件,以便可以将其下载到本地文件夹。

到目前为止,我可以从本地文件系统同步到 Azure blob,但不能以其他方式同步。

如果我使用轮询,我应该多久轮询一次以及它对性能的影响有多大?

最佳答案

这是您需要自己管理的事情,因为无法观察 blob 或容器。也就是说:您可以检查 container's (或 blob's )电子标签以查看内容是否已更新。

至于轮询:每次执行 GET 操作时,都会发生事务命中。并不是说它的成本非常高(每 10 万笔交易花费半美分):如果您每秒轮询一次,则每月可能会花费 15 美分(每个角色实例进行轮询)。但是:我认为这有点激进,特别是如果您同时发生其他与存储相关的事件(队列轮询等)。

这取决于您认为 blob 内容更新的频率,以及本地缓存需要的最新程度。

您还可以考虑构建一个 uploader 服务,该服务获取上传的对象,将其存储在 Blob 存储中,并通知所有正在运行的实例有更新(包括更新的 Blob 的 URL)。也许为此使用服务总线发布/订阅?我不了解您的应用程序的架构以及内容如何上传;这可能适合你,也可能不适合你。

关于azure - 自动将 Azure Blob 同步到本地文件系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12329452/

相关文章:

c++ - 这种 boost 条件代码的使用有问题吗?

c++ - 如何强制线程严格按顺序工作?

c# - 在同一台计算机上的 .net 应用程序之间传输大数据

github - Visual Studio 代码同步设置 github要点 ID

c# - FileSystemWatcher 是否创建自己的线程?

Java nio FileSystem Watcher 锁定目录。删除变得不可能

azure - 如何调试 Azure 交换过程(有时会导致站点关闭)

javascript - Three.js 在 Azure 中加载 .OBJ 错误,但在本地则不然

azure - 无法在 azure Active Directory 中创建应用程序 - 权限不足

azure - 如何创建 F# azure 函数