This version is a big change:

It tries to resolve the centralized global key scalable issue by
relying on weakly consistent of global state. There is a global
monitoring thread that keeps monitoring the global state and
puts it in ZHT periodically, and each controller will query the global
state, and store the state in a Binary Search Tree.