开发者学堂课程【Spring Cloud 微服务架构设计与开发实战 :Spring Cloud 微服务注册与发现 Eureka】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/60/detail/1085
Spring Cloud 微服务注册与发现 Eureka
内容简介:
一、服务注册与发现
二、Spring Cloud 架构图
三、Spring Eureka 注册中心
四、写代码
一、服务注册与发现
对于微服务来说,我们要对服务进行拆分,服务实例进行部署的时候,实例数量是不固定的的(可能是两个实例,也可是20个或200个等),整个的微服务实例数量是弹性伸缩的和传统的架构不太一样,微服务
其实定位一个一个特点弹性有点像云计算、云原生靠拢,这也是他的一个优势,微服务本身拆分以后能够进行很好的治理进行快速地部署。
1. 大规模微服务集群架构(为了方便客户端的调用)
2. 许多服务实例
3. 客户端要找到自己调用的服务
4. 新服务上线
5. 某个服务宕机,下线
6. 实时监控服务的状态
注:服务监控、服务查找、服务注册均等分布
1. Spring Cloud Eureka 服务发现与注册
1. Neflix 公司开源的项目
2. Eureka: 注册中心;
3. -个基于 REST 的中心服务,管理服务;
4. 实现云端的服务注册和服务发现。
5. Eureka 组件组成: Eureka 服务器和 Eureka 客户端
6. 竞争对手 ZooKeeper
7. 服务发现模块(Eureka) 是 Netflix 的核心
8. Spring Cloud Netflix 提供的简化开发模板
9. 直接使用 spring boot,创建项目
10. 添加 @EnableEurekaServer 开发注册服务中心
二、Spring Cloud 架构图
对于客户端的话,微服务上线来做注册,微服务的实例是动态的也有可能是异态,
根据客户端的压力来做弹性伸缩,不需要直接找微服务,先找注册中心,找搜索最新的列表,客户端可以根据不同数列的数量去调用,之后结合算法去进行一个灵活地调动。
三、.Spring Eureka 注册中心
1.创建Eureka 服务注册中心项目
2.添加 @EnableEurekaServer
3.将 spring boot 应用改造成 Eureka 服务注册中心
4.application.properties 增加配置
5.打包项目
6.运行
7.测试页面
8.参考https://spring.ic/guides/gs/service-registration-and-discovery/
5.application.properties 配置
·
server.port=8761
·
eureka.client.register-with-eureka=false
·
eureka.client.fetch-registry=false
·
eureka.client.serviceUrl.defaultZone=http://localhost:$(ser
ver.port]/eureka
/·
logging.level.com.netflix.eureka=OFF
·
logging.level.com.netflix.discovery=OFF
四、写代码
1.打开 Eclipse,新建一个 New Spring Starter Project
2.把 Name 改为 EurekaDemo
3.将 Available 改为 Eureka 并且选中 Eureka Server
4.将 Available 改为 dev 并且选中 Spring Boot DevTools
5.@EnableEurekaServer
6.修改配置文件
Spring.application.name=EurekaServer
Server.port=8761
eureka.client.service-url,defaultZone=http://localhost:8761/eureka/
7.启动程序
8.打开浏览器输入 localhost:8761
9.打开配置文件输入
eureka.client.fetch-registry=false
eureka.client.register-with-eureka=false;
10.打开浏览器刷新