Spring Cloud Edgware新特性之七:可选的EnableDiscoveryClient注解

最近家里事情比较多,有20天没有更新博客了。12月31日早上,老婆突然肚子疼,然后就去医院了。在经过难熬的28个小时之后,老婆早产生了个小姑娘。之后就一直奔波在家、医院,直至今日。昨晚凌晨,姑娘突然大便出血,又住院了……南京几个医院的新生儿科都不让陪护,只有周一周四才能看到。

姑娘是个非常乖的宝宝,在家不哭不闹,饿了就吃,吃了就睡,睡醒就拉,拉完接着吃。送到医院给医生洗了个澡就大哭不止。但是没有办法,有病总得治,只能听医生的了。从生老大开始,我就开始跟医院有矛盾。如果把中间的细节描绘一下,大致可以成书。绝对狗血,并且比《Spring Cloud与Docker微服务架构实战》那本精彩,评分高。

话说我家的娃们跟过年大致都有点关系——

  • 老大农历初二生的
  • 老二元旦生的

希望他们的人生像过年一样无忧无虑、吃穿不愁。原本我想写富足,但是富足往往是父母赐给的,以我目前的实力,给他们许诺“富足”还很遥远。

言归正传,回到Spring Cloud——

相信熟悉Spring Cloud的读者对注解 @EnableDiscoveryClient@EnableEurekaClient 并不陌生。简单回顾一下——

要想将一个微服务注册到Eureka Server(或其他服务发现组件,例如Zookeeper、Consul等),只需:

  • 添加Eureka Client(或其他服务发现组件的Client)依赖:
<dependency>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
  • 写注解:在启动类上添加注解 @EnableDiscoveryClient@EnableEurekaClient
@EnableDiscoveryClient
@SpringBootApplication
public class ProviderUserApplication {
  public static void main(String[] args) {
    SpringApplication.run(ProviderUserApplication.class, args);
  }
}
  • 写配置:
spring:
  application:
    name: microservice-provider-user
  eureka:
    client:
      serviceUrl:
        defaultZone: http://localhost:8761/eureka/

从Spring Cloud Edgware开始, @EnableDiscoveryClient@EnableEurekaClient可省略。只需加上相关依赖,并进行相应配置,即可将微服务注册到服务发现组件上。

分析

文章写到这里,Edgware新特性已经结束了。

但Spring Cloud为什么要这么设计/改进呢?

这是由于在实际项目中,我们可能希望实现“不同环境不同配置”的效果——例如:在开发环境中,不注册到Eureka Server上,而是服务提供者、服务消费者直连,便于调测;在生产环境中,我们又希望能够享受服务发现的优势——服务消费者无需知道服务提供者的绝对地址。为适应该需求,Spring Cloud Commons进行了改进,相关Issue:https://github.com/spring-cloud/spring-cloud-commons/issues/218 。

如不想将服务注册到Eureka Server,只需设置 spring.cloud.service-registry.auto-registration.enabled=false ,或 @EnableDiscoveryClient(autoRegister=false) 即可。

原文发布于微信公众号 - A周立SpringCloud(gh_e6849e368b5f)

原文发表时间:2018-01-16

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FD的专栏

国外整理的一套渗透测试资源合集

32030
来自专栏算法修养

HDU-4539郑厂长系列故事——排兵布阵(状态压缩,动态规划)

郑厂长系列故事——排兵布阵 Time Limit : 10000/5000ms (Java/Other) Memory Limit : 65535/3276...

37250
来自专栏码神联盟

碎片化 | 第四阶段-44-struts2注解使用-视频

如清晰度低,可转PC网页观看高清版本: http://v.qq.com/x/page/u056793mnko.html 版权声明:本视频、课件属本公众号作者所...

35560
来自专栏工科狗和生物喵

C++初入门,写个弱智银行卡系统

写在前面: 自从课程设计之后,我们就开始了生产实习,我们老师找的是河南卫华集团的技术部实习,经过一阵子的不适应(比如说河南这边的基本没味道的伙食,我们现在两个人...

492110
来自专栏HansBug's Lab

1572: [Usaco2009 Open]工作安排Job

1572: [Usaco2009 Open]工作安排Job Time Limit: 10 Sec  Memory Limit: 64 MB Submit: 81...

31590
来自专栏杨建荣的学习笔记

性能调优之redo切换频率(47天)

生产系统的一个库(负责容错处理的),目前遇到了严重的性能问题,数据量也大的出奇,一个分区表一百多个分区,blob字段达到了800多G.查看 AWR 系统负载倒不...

35540
来自专栏编程微刊

【前端统计图】echarts改变颜色属性的demo一:柱状图改变颜色二:横向柱状图渐变

1.8K40
来自专栏杨建荣的学习笔记

dataguard中MRP无法启动的问题分析和解决(r5笔记第82天)

自己手头有一套dataguard环境,因为也有些日子没有用了,结果突然心血来潮准备启动起来学习一下,突然发现在敲了命令 recover managed stan...

28380
来自专栏腾讯社交用户体验设计

Merry Christmas with QQfamily

17860
来自专栏Netkiller

以太坊 Iban 地址

中国广东省深圳市龙华新区民治街道溪山美地 518131 +86 13113668890 <netkiller@msn.com>

501160

扫码关注云+社区

领取腾讯云代金券