当前位置: 首页 > news >正文

Spring Cloud Commons 普通抽象

诸如服务发现,负载平衡和断路器之类的模式适用于所有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是一个标记界面。

@Configuration
@EnableDiscoveryClient(autoRegister=false)
public class MyConfiguration {
    private ServiceRegistry registry;

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

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

每个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实现的文档,以获取更新状态的允许值和为状态获取的值。完整项目的源码来源 技术支持1791743380



转载于:https://juejin.im/post/5b6425806fb9a04fae2127d2

相关文章:

  • zabbix中文问题汇总
  • join
  • 华为S5300系列交换机V200R001SPH027升级补丁
  • 正则表达式小结
  • sql查询语句
  • [转] 梦里Babel知多少(一)
  • 性能测试 tps持续走低,响应时间持续增加,瓶颈分析
  • BZOJ1497 最大获利
  • 探秘varian:优雅的发布部署程序
  • 论“小猪佩奇如何从营销到吸金一路开挂前行”!
  • 使用mysqldump 备份 恢复从库报错解决方案(ERROR 1872)
  • Jquery mobiscroll 移动设备(手机)wap日期时间选择插件以及滑动、滚动插件
  • 动画小记——点击头像逐渐放大
  • Tuxera NTFS for Mac 拼团仅需¥99!再见原价¥298!
  • 什么样的项目适合自动化测试
  • interface和setter,getter
  • iOS筛选菜单、分段选择器、导航栏、悬浮窗、转场动画、启动视频等源码
  • Javascript Math对象和Date对象常用方法详解
  • JavaScript 基础知识 - 入门篇(一)
  • Java编程基础24——递归练习
  • Java到底能干嘛?
  • JSDuck 与 AngularJS 融合技巧
  • php面试题 汇集2
  • python学习笔记 - ThreadLocal
  • RxJS: 简单入门
  • Spring-boot 启动时碰到的错误
  • Terraform入门 - 3. 变更基础设施
  • Travix是如何部署应用程序到Kubernetes上的
  • 服务器从安装到部署全过程(二)
  • 力扣(LeetCode)357
  • 手机app有了短信验证码还有没必要有图片验证码?
  • 小程序测试方案初探
  • 小而合理的前端理论:rscss和rsjs
  • ​软考-高级-系统架构设计师教程(清华第2版)【第12章 信息系统架构设计理论与实践(P420~465)-思维导图】​
  • (17)Hive ——MR任务的map与reduce个数由什么决定?
  • (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (C)一些题4
  • (Redis使用系列) Springboot 整合Redisson 实现分布式锁 七
  • (阿里巴巴 dubbo,有数据库,可执行 )dubbo zookeeper spring demo
  • (笔试题)分解质因式
  • (附源码)springboot课程在线考试系统 毕业设计 655127
  • (六)库存超卖案例实战——使用mysql分布式锁解决“超卖”问题
  • (转)德国人的记事本
  • (轉貼) UML中文FAQ (OO) (UML)
  • (状压dp)uva 10817 Headmaster's Headache
  • ***汇编语言 实验16 编写包含多个功能子程序的中断例程
  • .bat批处理(三):变量声明、设置、拼接、截取
  • .net core 6 集成 elasticsearch 并 使用分词器
  • .NET Framework 4.6.2改进了WPF和安全性
  • .NET程序员迈向卓越的必由之路
  • .NET正则基础之——正则委托
  • .Net中wcf服务生成及调用
  • @data注解_一枚 架构师 也不会用的Lombok注解,相见恨晚
  • @RequestParam详解
  • [20150904]exp slow.txt