Abmar Barros commented on ZOOKEEPER-702:
Once ZooKeeper guarantees delivery order, I can ignore the seq field in
heartbeat and pings messages.
Now I am implementing the methods on the interface I proposed and two issues
came to mind:
* ZooKeeper uses application messages as hearbeats, so actual pings and
heartbeats are used only at idle states. The proposed methods must be adapted
to consider this scenario.
* Regarding that a single thread is being used for the app and the FD, there is
a delay between the time a monitored must be pinged and the time it is actually
pinged. The impact of this delay in the FD QoS must be analyzed.
> GSoC 2010: Failure Detector Model
> Key: ZOOKEEPER-702
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-702
> Project: Zookeeper
> Issue Type: Wish
> Reporter: Henry Robinson
> Assignee: Abmar Barros
> Attachments: bertier-pseudo.txt, chen-pseudo.txt,
> phiaccrual-pseudo.txt, ZOOKEEPER-702.patch
> Failure Detector Module
> Possible Mentor
> Henry Robinson (henry at apache dot org)
> Java, some distributed systems knowledge, comfort implementing distributed
> systems protocols
> ZooKeeper servers detects the failure of other servers and clients by
> counting the number of 'ticks' for which it doesn't get a heartbeat from
> other machines. This is the 'timeout' method of failure detection and works
> very well; however it is possible that it is too aggressive and not easily
> tuned for some more unusual ZooKeeper installations (such as in a wide-area
> network, or even in a mobile ad-hoc network).
> This project would abstract the notion of failure detection to a dedicated
> Java module, and implement several failure detectors to compare and contrast
> their appropriateness for ZooKeeper. For example, Apache Cassandra uses a
> phi-accrual failure detector (http://ddsg.jaist.ac.jp/pub/HDY+04.pdf) which
> is much more tunable and has some very interesting properties. This is a
> great project if you are interested in distributed algorithms, or want to
> help re-factor some of ZooKeeper's internal code.
This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.