我喜欢在Worker角色中编写一个进程,将文件夹(目录)下的一批文件下载(同步)到本地镜像文件夹(目录)
上次文件夹(目录)的更新时间是否有时间戳(或获取方式)?
由于文件夹(目录)结构不确定,但只需将下载到本地,只要它更改即可。除了递归和设置计时器反复检查它,你有另一个聪明的主意吗?
(编辑)p.s.我发现了从本地到Azure存储的同步文件的许多解决方案,但是本地文件的相同原则不适用于Azure blob,我仍然在寻找一种最容易将文件下载(同步)到本地的方法
答案 0 :(得分:1)
我的建议是在blob存储之上创建一个抽象,这样就没有人直接写入blob。然后在写入新文件时向Azure的队列服务提交消息。让文件接收器轮询该队列的更改。无需递归扫描整个blob存储区。
就抽象而言,使用Azure Web角色或辅助角色来验证和授权您的客户端。让它写入Blob商店。您可以使用HTTPHandlers或WCF实现抽象,以直接处理IO请求。
此抽象将允许您克服上述评论中提到的5000个文件的blob限制,并允许您向外扩展并为客户提供其他功能。
我有兴趣在有机会时看到你的代码。也许我可以给你一些提示或代码修复。
答案 1 :(得分:1)
Eric,我相信如果我理解正确的话,你试图实施的概念对你的核心要求并没有那么有效。
考虑以下情况:
在这种情况下,有几点需要考虑: