1.数据发布与订阅
举个例子:单点登陆系统需要同步各个子系统的接口时,单点登陆系统可以主动去同步,但是项目在tomcat中的启动顺序是字典顺序,如果有项目A在单点登陆系统之后启动,这个时候A项目的接口就没有同步到单点登陆系统中。解决方法:我们可以注册一个Znode节点,同时注册一个watcher事件,单点登陆系统与其他子系统启动完成之后都需要注册到Znode节点上,只要有新的节点注册到Znode中就会通知单点登陆系统去同步新节点的接口,这样就能保证单点登陆系统能同步所有子系统的接口。
2.Master选举
举个例子:kafka集群需要依赖zk集群,当kafka集群注册到zk集群中,zk集群会投票选举出master节点。
3.分布式锁
举个例子:A机器注册一个Znode,并注册一个watcher事件监听,B机器可以读取Znode节点,但是不能修改Znode节点。