请选择 进入手机版 | 继续访问电脑版
本站特色:极好的技术研究氛围!所有技术交流,必有回复!

疯狂Java联盟

 找回密码
 加入联盟
查看: 453|回复: 1

Spring Cloud Commons 普通抽象

[复制链接]
发表于 2018-6-26 15:53:16 | 显示全部楼层 |阅读模式
诸如服务发现,负载平衡和断路器之类的模式适用于所有Spring Cloud客户端可以独立于实现(例如通过Eureka或Consul发现)的消耗的共同抽象层。

@EnableDiscoveryClient
Commons提供@EnableDiscoveryClient注释。这通过META-INF/spring.factories查找DiscoveryClient接口的实现。Discovery Client的实现将在org.springframework.cloud.client.discovery.EnableDiscoveryClient键下的spring.factories中添加一个配置类。DiscoveryClient实现的示例是Spring Cloud Netflix Eureka,Spring Cloud Consul发现和Spring Cloud Zookeeper发现。

默认情况下,DiscoveryClient的实现将使用远程发现服务器自动注册本地Spring Boot服务器。可以通过在@EnableDiscoveryClient中设置autoRegister=false来禁用此功能。

ServiceRegistry
Commons现在提供了一个ServiceRegistry接口,它提供了诸如register(Registration)和deregister(Registration)之类的方法,允许您提供定制的注册服务。Registration是一个标记界面。
  1. @Configuration
  2. @EnableDiscoveryClient(autoRegister=false)
  3. public class MyConfiguration {
  4.     private ServiceRegistry registry;

  5.     public MyConfiguration(ServiceRegistry registry) {
  6.         this.registry = registry;
  7.     }

  8.     // called via some external process, such as an event or a custom actuator endpoint
  9.     public void register() {
  10.         Registration registration = constructRegistration();
  11.         this.registry.register(registration);
  12.     }
  13. }
复制代码

每个ServiceRegistry实现都有自己的Registry实现。

服务部门自动注册

默认情况下,ServiceRegistry实现将自动注册正在运行的服务。要禁用该行为,有两种方法。您可以设置@EnableDiscoveryClient(autoRegister=false)永久禁用自动注册。您还可以设置spring.cloud.service-registry.auto-registration.enabled=false以通过配置禁用该行为。

服务注册执行器端点

Commons提供/service-registry致动器端点。该端点依赖于Spring应用程序上下文中的Registration bean。通过GET调用/service-registry/instance-status将返回Registration的状态。具有String主体的同一端点的POST将将当前Registration的状态更改为新值。请参阅您正在使用的ServiceRegistry实现的文档,以获取更新状态的允许值和为状态获取的值。
 楼主| 发表于 2018-6-26 15:53:46 | 显示全部楼层
喜欢的朋友可以持续关注更新文章!
您需要登录后才可以回帖 登录 | 加入联盟

本版积分规则

微信群请扫二维码
QQ交流1群:
545923995
(未满)

小黑屋|手机版|Archiver|疯狂Java联盟 ( 粤ICP备11094030号 )

GMT+8, 2020-3-31 23:49 , Processed in 0.241292 second(s), 7 queries , File On.

快速回复 返回顶部 返回列表