

Spring Cloud之Finchley版学习(五)-服务注册与服务发现-Eureka学习
source link: https://www.wencst.com/archives/1177
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Spring Cloud之Finchley版学习(五)-服务注册与服务发现-Eureka学习
本节讲解基于Eureka的服务发现。
Eureka简介
Eureka是Netflix开源的服务发现组件,本身是一个基于REST的服务,包含Server和Client两部分,Spring Cloud将它集成在子项目Spring Cloud Netflix中。
拓展阅读
- Eureka的GitHub:https://github.com/Netflix/Eureka
- Netflix是一家在线影片租赁提供商。
- Eureka的典故:阿基米德发现浮力时,非常开心,于是说:“Eureka!”意思是“我找到了!”。Netflix将它们的服务发现组件命名为Eureka实在是非常形象。
理解跟我学Spring Cloud(Finchley版)-04-服务注册与服务发现-原理剖析 所讲的服务发现原理后,我们来编写基于Eureka的服务发现——首先编写一个Eureka Server,然后将前文的微服务都注册到Eureka Server上。
编写Eureka Server
- 加依赖
<dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> </dependency> </dependencies>
- 加注解
@SpringBootApplication @EnableEurekaServer public class EurekaApplication { public static void main(String[] args) { SpringApplication.run(EurekaApplication.class, args); } }
- 写配置
server: port: 8761 eureka: client: # 是否要注册到其他Eureka Server实例 register-with-eureka: false # 是否要从其他Eureka Server实例获取数据 fetch-registry: false service-url: defaultZone: http://localhost:8761/eureka/
TIPS
这里,大家可先不去探究
registerWithEureka
以及fetchRegistry
究竟是什么鬼,笔者将在下一节为大家揭晓。将应用注册到Eureka Server上
- 加依赖
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency>
- 加注解
@SpringBootApplication public class ProviderUserApplication { public static void main(String[] args) { SpringApplication.run(ProviderUserApplication.class, args); } }
注意:早期的版本(Dalston及更早版本)还需在启动类上添加注解
@EnableDiscoveryClient
或@EnableEurekaClient
,从Edgware开始,该注解可省略。 - 添加配置:
spring: application: # 指定注册到eureka server上的服务名称,对于电影微服务,本系列将名称设为microservice-consumer-movie name: microservice-provider-user eureka: client: service-url: # 指定eureka server通信地址,注意/eureka/小尾巴不能少 defaultZone: http://localhost:8761/eureka/ instance: # 是否注册IP到eureka server,如不指定或设为false,那就会注册主机名到eureka server prefer-ip-address: true
- 依次启动Eureka Server以及用户微服务、电影微服务;
- 访问
http://localhost:8761
可观察到类似如下界面: - 将用户微服务停止,可看到Eureka Server首页变成类似如下界面:
- 加注解
如果文章对您有用,扫一下支付宝的红包,不胜感激!
欢迎加入QQ群进行技术交流:656897351(各种技术、招聘、兼职、培训欢迎加入)
Leave a Reply Cancel reply
You must be logged in to post a comment.
Recommend
-
13
Spring Cloud之Finchley版学习(六)-服务注册与服务发现-Eureka深入 作者: wencst 分类: JAVA,
-
6
第2节( 跟我学Spring Cloud(Finchley版)-02-构建分布式应用 )说过: 地址硬编码问题——电影微服务中将用户微服务的地址写死,如果用户微服务地址发生变化,难道要重新上线电影微服务...
-
4
Spring Cloud之Finchley版学习番外篇(一)-Eureka安全详解 作者: wencst 分类: JAVA,
-
6
Spring Cloud Eureka源码分析之服务注册的流程与数据存储设计!Spring Cloud是一个生态,...
-
12
Eureka基础知识什么是服务治理Spring Cloud 封装了 Netflix 公司开发的 Eureka 模块来实现服务治理 在传统的rpc远程调用框架中,管理每个服务与服务之间依赖关系比较复杂,管理比较复杂,所以需要使用服务治理,管理服务于服务之间依...
-
8
Spring Cloud源码分析之Eureka第六章:服务注册 推荐 原创 欢迎访问我的GitHub ...
-
3
Spring Cloud源码分析之Eureka第八章:服务注册名称的来历 原创 欢迎访问我的GitHub ...
-
8
1 Preface Eureka 是Netflix开发的服务发现框架,本身是一个基于REST的服务。 SpringCloud将它集成在其子项目spring-cloud-netflix中,以实现SpringCloud的服务注册与发现功能。 在 Spring 全家桶中, Eureka 是一个微服务注册中心,主要...
-
6
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码): https://github.com/zq2599/blog_demos Spring Cloud环境下,服...
-
2
Eureka核心功能点 【1】服务注册(register):Eureka Client会通过发送REST请求的方式向Eureka Server注册自己的服务,提供自身的元数据,比如ip地址、端口、运行状况指标的url、主页地址等信息。Eureka Server接收到注册请求后,就会把这...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK