All,

I've been doing a bit of research on etcd as part of work for an upcoming
talk, and it has gotten me thinking about what it would take to create an
http version of ZK for certain operations. For many operations you could
put an http proxy in front of ZK to translate, even implementing the
"long-poll-style" watch operation to some extent. But it would be very hard
to do a temporary node via a proxy without a lot of proxy failover
complexity.

As a bit of background, if you want to do an "ephemeral" node in etcd, you
basically create a key with a TTL. Unless the key is updated with a new
TTL, the key will auto-expire when the TTL is reached. Now, I have a lot of
thoughts about this (seems like you have to implement heartbeats via http
to truly mimic ephemeral nodes which may not be as simple as all this http
sounds), but I do think that if there is appetite for easy http access for
consensus systems we should at least take the time to think about what it
would take for us to provide this. In particular, I think we'd have to make
it possible to create a node with a TTL that is not tied to a particular
session.

Curious to see if anyone has any thoughts on this. It seems like a bit of a
shame that ZK, which is a good battle-tested system, is frequently being
passed-over these days because of the complexity of clients, and the fact
that it is really pretty damn hard to do a client impl in certain languages
(Ruby is the notable one I've heard).

Best,
C

Reply via email to