【发布时间】:2018-11-20 05:52:12
【问题描述】:
我有多个 JSON 格式文件被推送到特定容器下的 Azure 存储帐户。容器中有n个文件。
还有4到8个节点将访问Azure存储容器下载文件到本地,下载代码是java写的。
由于有n个文件,多个文件同时访问容器,如何避免同一个文件被另一台服务器下载的情况?
Example:
Azure container has 1.json, 2.json, 3.json, etc which are > 35 MB size.
batch-process-node1 -> starts downloading 1.json
batch-process-node2 -> starts downloading 2.json
batch-process-node3 -> should not start downloading the 1.json
是否为每个具有唯一下载文件的 java 进程的节点构建任何逻辑? Azure 存储容器中是否有可以设置的设置?
--
尝试使用 Camel Azure-bolb 组件,使用块 blob (blobType)。
Azure 存储 blob 的新手,感谢您提供任何帮助。
【问题讨论】:
-
你想避免服务器节点同时下载文件还是只下载文件?
-
如果任何文件被一个服务器节点选择下载,相同的文件不应该可供其他服务器节点下载。如果这有帮助。
-
目前正在探索使用camel azure-blob组件的选项,在分布式环境中下载blob。
标签: azure apache-camel azure-blob-storage