依赖项观察程序机制允许您将侦听器注册到依赖项。这
事实上,功能是模式的实现。当一个
依赖项更改,其状态(UP 或 DOWN),可以应用一些自定义逻辑。Observer
注册侦听器
要注册侦听器,必须实现一个名为 和
将其注册为 Bean。该接口为您提供了一种方法:org.springframework.cloud.zookeeper.discovery.watcher.DependencyWatcherListener
void stateChanged(String dependencyName, DependencyState newState);
如果要为特定依赖项注册侦听器,则
成为您具体实施的鉴别器。 为您提供
有关依赖项是否已更改为 或 .dependencyName
newState
CONNECTED
DISCONNECTED
使用状态检查器
与依赖关系观察程序绑定的是称为“状态检查器”的功能。它让 在应用程序启动时提供自定义行为,以便根据状态做出反应 的依赖项。
抽象类的默认实现是 ,
其工作方式如下。org.springframework.cloud.zookeeper.discovery.watcher.presence.DependencyPresenceOnStartupVerifier
org.springframework.cloud.zookeeper.discovery.watcher.presence.DefaultDependencyPresenceOnStartupVerifier
-
如果依赖项标记为 us 并且不在 Zookeeper 中,当您的应用程序 启动,它会抛出异常并关闭。
required
-
如果依赖项不是 ,则记录该依赖项在级别上缺失的日志。
required
org.springframework.cloud.zookeeper.discovery.watcher.presence.LogMissingDependencyChecker
WARN
因为只有在有
没有 bean 类型,此功能可以是
重写。DefaultDependencyPresenceOnStartupVerifier
DependencyPresenceOnStartupVerifier