使用zookeeper通过群集分发文件

时间:2017-08-08 04:30:44

标签: apache-zookeeper distributed-filesystem

我有一个基于用户输入创建文件的API。我需要在群集上分发此文件,这样1个文件应该只在1个节点上。我可以使用zookeeper来实现这个目标吗?

用户可能想要删除该文件。这意味着当被要求时,zookeeper需要从节点中删除该文件。

我已经阅读了zookeeper wiki,但很难理解如何/何时使用它。

1 个答案:

答案 0 :(得分:0)

是的,你可以使用Apache Curator Recipes来做到这一点。 Apache Curator是Apache Zookeeper的改进客户端库。

您可以使用zookeeper 观看 API和Curator的分布式锁定来实现您的目标。

  1. 首先,在创建文件时,在ZNode下创建一个ZNode(可能将文件内容作为数据),该ZNode正由群集中的所有节点监视。然后,群集中的所有节点将在文件创建时通知
  2. 然后,节点将竞争获取分布式锁,并且获取它的节点将下载该文件(如果您愿意,可以删除先前创建的带有文件内容的ZNode或引入另一种跟踪采集文件的机制。)
  3. 希望你有所了解。