全国咨询/投诉热线:400-618-4000

Watch机制的显著特点有哪些?Watch简介

更新时间:2020年11月03日17时06分 来源:传智播客 浏览次数:

ZooKeeper提供了分布式数据发布/订阅功能,一个典型的发布/订阅模型系统定义了一种一对多的订阅关系,能让多个订阅者同时监听某一个主题对象,当这个主题对象自身状态变化时,会通知所有订阅者,使他们能够做出相应的处理。
  在ZooKeeper中,引入了Watch机制来实现这种分布式的通知功能。ZooKeeper允许客户端向服务端注册一个Watch监听,当服务端的一些事件触发了这个Watch,那么就会向指定客户端发送一个事件通知,来实现分布式的通知功能。
       Watch机制在事件中有以下4个特点:
  1.一次性触发
  当Watch的对象发生改变时,将会触发此对象上Watch所对应的事件,这种监听是一次性的,后续再次发生同样的事件,也不会再次触发。
  2.事件封装
  Zookeeper使用WatchedEvent对象来封装服务端事件并传递。该对象包含了每个事件的三个基本属性,即通知状态(keeperState)、事件类型(EventType)和节点路径(path)。
  3.异步发送
  Watch的通知事件是从服务端异步发送到客户端的。
  4.先注册再触发
  Zookeeper中的Watch机制,必须由客户端先去服务端注册监听,这样才会触发事件的监听,并通知给客户端。


猜你喜欢:

Znode储存结构是怎样的?节点类型有几种?

Zookeeper分布式系统的集群架构介绍