Hey All,

So I've started working on the node.js implementation. It's not near ready
yet, but it's coming along.

Here's the link to the repository:
https://github.com/sudowork/node-helix-participant

Best,
Kevin


On Mon, Sep 23, 2013 at 1:52 PM, Kevin Gao <[email protected]> wrote:

> It's great to hear that others are interested in this initiative. Thanks
> for working on the spec Kanak.
>
> Regarding the node.js participant, here are some ZooKeeper clients that
> I've investigated:
>
>
>    - node-zookeeper-client<https://github.com/alexguan/node-zookeeper-client>
>
>
>    - Feature-parity with official ZK client
>
>
>    - Well documented and still maintained
>
>
>    - API is consistent with Node.js libraries
>
>
>    - Written entirely in Node, making it more portable; however, the
>    behavior is not guaranteed to be consistent with the official ZK client
>
>
>    - node-zookeeper <https://github.com/yfinkelstein/node-zookeeper>
>
>
>    - Is actually an interface for the official ZK C API, so behavior
>    could be assumed to be correct
>
>
>    - Less portable because it must be built for every platform
>
>
>    - API is consistent with the official ZK API
>
>
>    - node-zkplus <https://github.com/mcavage/node-zkplus>
>
>
>    - API modeled after fs API
>
>
>    - Built on top of node-zookeeper
>
>
> Best,
> Kevin
>
>
> On Mon, Sep 23, 2013 at 11:33 AM, Kanak Biscuitwala 
> <[email protected]>wrote:
>
>> +1. Jason and I will work on the spec and will point you to it once it's
>> ready.
>>
>> Kanak
>> ________________________________
>> > Date: Mon, 23 Sep 2013 11:30:23 -0700
>> > Subject: Re: Node.js Helix Participant
>> > From: [email protected]
>> > To: [email protected]
>> >
>> > Hi Kevin,
>> >
>> > This will be a great addition. We, at LinkedIn are also seeing the need
>> > to have Helix Participant in other languages such as Python. Python
>> > already has some good zk libraries. I am not sure if we have good zk
>> > libraries in node.js/javascript (Patrick, might have some suggestions).
>> >
>> > I think it will definitely help the community and we are interested in
>> > python implementation.
>> >
>> > The best way to approach this would be to first come up with a minimal
>> > spec required for the participant. Currently things that participant
>> > does is
>> >
>> >
>> > * Create a ephemeral node under liveinstances when it starts
>> > * Listen to messages node for commands from the controller
>> > * Update the current state with the result of the command.
>> >
>> > thanks,
>> > Kishore G
>> >
>> >
>> >
>> >
>> > On Thu, Sep 19, 2013 at 11:24 AM, Kevin Gao
>> > <[email protected]<mailto:[email protected]>> wrote:
>> > Hi all,
>> >
>> > My colleagues at Box and I are considering developing a Node.js based
>> > Helix participant library as an open source project. I first and
>> > foremost wanted to gauge how useful this would be in the community's
>> > use cases. For us, the main service runs on Node.js and is the actual
>> > owner of resources, while we treat Helix as the one, shared source of
>> > truth regarding which nodes own what resources. This introduces a split
>> > brain scenario between the two. In the mean time, we have introduced
>> > health checking and state validation to ensure that the two are
>> > consistent. Additionally, we have developed a local protocol for
>> > communicating state transitions. However, maintaining this architecture
>> > leaves room for inconsistency as well as significant slow down in
>> > developing actual application logic.
>> >
>> > What we think would be extremely useful to us is to have write a
>> > JavaScript-based participant library. This involves a few major
>> > questions to be answered first:
>> >
>> > * Is the community interested in the availability of this project?
>> > * Is there a reliable, vetted ZooKeeper client for Node.js?
>> > * What components of the Helix library need to be ported over?
>> > * Related to the previous question, what feature set is required at
>> > minimum for a production-ready library?
>> > * How difficult would it be to maintain this library in parallel to the
>> > main Helix distribution?
>> >
>> > My team and I would appreciate any feedback or input you have!
>> >
>> > Best,
>> > Kevin
>> >
>> > --
>> > Kevin Gao
>> > [email protected]<mailto:[email protected]>
>> >
>
>
>
>
> --
> Kevin Gao
> [email protected]
>



-- 
Kevin Gao
[email protected]

Reply via email to