Thanks Jordan. Want to start a new thread on this? THis has already dragged on for a while. Can you also include - what happens to existing recipes? Would this new sub project include the already existing recipes and port them using Curator?
thanks mahadev On Mon, Dec 12, 2011 at 11:06 PM, Jordan Zimmerman <[email protected]> wrote: > While we're not interested in submitting Curator to the Incubator, I've > prepared a proposal for including Curator as a ZooKeeper sub-project or > inclusion in the main project. Here's the proposal (for commenting, etc.): > > Curator, a ZooKeeper Recipe Proposal > ==================================== > > == Abstract == > Users of Apache ZooKeeper would greatly benefit from having a high quality > implementation of common recipes included with the ZooKeeper distribution. > Curator is that implementation. > > == Proposal == > Apache ZooKeeper should produce a new artifact for recipes/applications. > This artifact should either be a ZooKeeper sub-project or top-level part > of ZooKeeper itself. For Java (and possibly other JVM based languages), > the Netflix Curator project should be the artifact. > > == Background == > ZooKeeper consists of server software and client software. The client > implementations that are part of the ZooKeeper distribution are very low > level and difficult to use correctly. Further, implementing the recipes > listed in the ZooKeeper documentation is non-trivial and involves deep > knowledge of ZooKeeper best practices and edge cases. > > == Rationale == > The existing clients for ZooKeeper are difficult to use and are limited. > Further, correct usage of ZooKeeper is non-trivial and non-obvious. Users > of ZooKeeper are mostly interested in the recipes/applications and are not > likely interested in becoming experts in the minutiae of correct ZooKeeper > client usage. What they want is a simple way to use the recipes. Curator > is directed at this goal. > > == Current Status == > Curator is an active open source project hosted at Github > (https://github.com/netflix/curator). It has no dependencies other than > industry standard libraries. It provides implementations for all recipes > listed on the ZooKeeper recipes doc as well as a high level framework for > using ZooKeeper that simplifies most of the low level housekeeping > normally required. > > Curator has been open since October, 2011 and has been reviewed by several > active members of the ZooKeeper community. > > Netflix is a strong proponent of open source and is supportive of > providing the community with this project. > > == Core Developers == > The initial set of committers are all employees of Netflix, Inc. The lead > developer is Jordan Zimmerman ([email protected]), Senior Platform > Engineer at Netflix, Inc. > > == Alignment == > The current ZooKeeper distribution has an obvious hole in regard to > recipes/applications. Curator's minimal dependencies and use of standard > ZooKeeper components, recipe algorithms and best practices make it a > natural compliment to the ZooKeeper distribution. > > == Known Risks == > Orphan-ing of Curator: > ZooKeeper has become a major component at Netflix. Curator is the > abstraction being used. > > Open Source Experience: > Netflix has major experience with open source. The committers of Curator > have long experience with open source. > > Homogenous/Salaried Developers: > The current committers are all salaried employees of Netflix. This > proposal would help by having a more diverse set of committers. > > Ties to Apache products: > The initial codebase relies heavily on existing Apache technologies and > will continue to do so. > > == Documentation == > Comprehensive documentation is at https://github.com/Netflix/curator/wiki > > == Initial Source == > The source code currently is hosted at Github at: > https://github.com/Netflix/curator > > == External Dependencies == > Runtime: > * Apache ZooKeeper > * Google Guava > > Test: > * Test NG > * Apache Commons Math > * Mockito > * Javaassist > > Build: > * Apache Maven > > == Initial Committers == > Jordan Zimmerman (Netflix, Inc.) > Jay Zarfoss (Netflix, Inc.) > Jerome Boulon (Netflix, Inc.) > >
