【问题标题】:Is Apache Curator performant?Apache Curator 性能好吗?
【发布时间】:2015-09-29 11:39:29
【问题描述】:
我对 Curator 和 Zookeeper 的工作有一个高层次的了解。但是,我不知道他们是在内存中还是在磁盘上管理信息。例如,屏障或分布式队列的“收据”建议在特定路径打开一个节点(节点是文件?);这些节点是在内存中维护的,还是在磁盘/HDFS 上的文件?我认为跨机器的传统屏障现在需要通过策展人屏障来完成;因此,如果这些操作涉及繁重的操作,会不会很慢?
Curator 屏障在性能方面与传统 MPI 屏障相比如何?
【问题讨论】:
标签:
mpi
distributed-computing
apache-zookeeper
distributed-system
apache-curator
【解决方案1】:
ZooKeeper 是一个基于仲裁的单领导系统,因此,虽然它确实在内存中保存状态,但它受到领导者可以维持的吞吐量的限制。 ZooKeeper 中的所有状态更改都经过领导者,并同步复制到大多数节点上并持久化,但可以在任何节点上进行读取。
在 ZooKeeper 中,节点(或 znode)是指保存在内存中并由磁盘支持的状态。它使用类似文件的接口,但 znode 不映射到单个文件。磁盘并不意味着 HDFS,它本质上意味着一个提交日志。
将 ZooKeeper 用于锁或屏障所获得的是线性化。由于共识(法定人数)的限制,一致性的成本相对较高。但是 ZooKeeper 有一个很棒的事件通知系统,可以帮助提高锁和屏障等性能。