擅长:python、mysql、java
<p>如果发出单独的create()s,则在完成一半时可能会被中断或失败。要使调用成为原子调用,可以使用新的<a href="http://zookeeper.apache.org/doc/r3.4.3/api/org/apache/zookeeper/ZooKeeper.html#multi%28java.lang.Iterable%29" rel="nofollow noreferrer">multi() API</a>。见<a href="https://stackoverflow.com/a/9642817/319821">this answer</a>。</p>
<p>如果路径或其一部分可能已经存在,那么在发出下一个之前等待每个create()完成将不必要地缓慢。在这种情况下,可以使用异步API来加快进程。见<a href="https://stackoverflow.com/a/9952828/319821">this answer</a>。</p>
<p>如果您只是想避免额外的调用,可以使用<a href="https://github.com/Netflix/curator/wiki" rel="nofollow noreferrer">Netflix's curator</a>库,它有一个<code>creatingParentsIfNeeded</code>方法,但要注意它可能会很慢。见<a href="https://stackoverflow.com/a/9901572/319821">this answer</a>。</p>