Zookeeper的java客户端api的监听功能
1.其中master slave1 slave2需要修改本地hosts文件
C:\Windows\System32\drivers\etc\hosts
192.168.1.10 master
192.168.1.11 slave1
192.168.1.12 slave2
检查是否能在本机ping通
2.监听节点的主类需要Thread.sleep(Long.MAX_VALUE);
在构造zookeeper客户端对象时,zookeeper创建了两个线程sendThread,eventThread。
public void start() {
sendThread.start();
eventThread.start();
}
其中sendThread用来接发数据,eventThread用来监听。而eventThread线程中setDaemon则是一个守护进程。Daemon() 程序是一直运行的服务端程序,又称为守护进程。通常在系统后台运行,没有控制终端,不与前台交互,Daemon程序一般都作为服务程序使用,等待客户端程序与它通信。一旦main线程结束,守护线程就结束。因此使得线程一直监听节点状态,需要使得main线程sleep。
EventThread() {
super(makeThreadName("-EventThread"));
setUncaughtExceptionHandler(uncaughtExceptionHan