对于最新的稳定版本,请使用 Spring Cloud Zookeeper 4.3.0spring-doc.cadn.net.cn

Spring Cloud Zookeeper 依赖项观察器

依赖项观察器机制允许您将侦听器注册到依赖项。这 功能实际上是Observer模式。当 依赖项更改,其状态(为 UP 或 DOWN),可以应用一些自定义逻辑。spring-doc.cadn.net.cn

激活

需要启用 Spring Cloud Zookeeper 依赖项功能才能使用 依赖项观察程序机制。spring-doc.cadn.net.cn

注册侦听器

要注册侦听器,您必须实现一个名为org.springframework.cloud.zookeeper.discovery.watcher.DependencyWatcherListener和 将其注册为 bean。该接口为您提供了一种方法:spring-doc.cadn.net.cn

void stateChanged(String dependencyName, DependencyState newState);

如果要为特定依赖项注册侦听器,则dependencyName愿意 成为您具体实施的鉴别者。newState为您提供 有关依赖项是否已更改为CONNECTEDDISCONNECTED.spring-doc.cadn.net.cn

使用状态检查器

与依赖项观察程序绑定的是称为状态检查器的功能。它让 在应用程序启动时提供自定义行为,以根据状态做出反应 您的依赖关系。spring-doc.cadn.net.cn

抽象的默认实现org.springframework.cloud.zookeeper.discovery.watcher.presence.DependencyPresenceOnStartupVerifierclass 是org.springframework.cloud.zookeeper.discovery.watcher.presence.DefaultDependencyPresenceOnStartupVerifier, 其工作方式如下。spring-doc.cadn.net.cn

  1. 如果依赖项标记为required并且不在 Zookeeper 中,当您的应用程序 boots,它会抛出异常并关闭。spring-doc.cadn.net.cn

  2. 如果依赖项不是requiredorg.springframework.cloud.zookeeper.discovery.watcher.presence.LogMissingDependencyChecker日志中缺少依赖项WARN水平。spring-doc.cadn.net.cn

因为DefaultDependencyPresenceOnStartupVerifier仅当有 没有类型的 beanDependencyPresenceOnStartupVerifier,此功能可以是 重写。spring-doc.cadn.net.cn