前言
总结整合自视频课程 https://www.bilibili.com/video/BV1LQ4y127n4
只是自己整理了一下笔记,分享了出来。
抹除了一些。
入门学习建议观看视频,这边只是整理了一些资料。
提供者与消费者
- 服务提供者:暴露接口给其它微服务调用
- 服务消费者:调用其它微服务提供的接口
- 提供者与消费者角色其实是相对的
- 一个服务可以同时是服务提供者和服务消费者
Eureka注册中心
服务调用的问题
- 服务消费者如何获取提供者的地址信息???
- 如果有多个服务提供者,消费者该如何选择???
- 消费者如何得知服务提供者的健康状态(服务器是否挂了)???
Eureka作用
解决问题1 :服务消费者如何获取提供者的地址信息???
- 服务提供者首先向Eureka发送服务注册信息
- 服务消费者从Eureka拉取到提供者的信息
解决问题2 :如果有多个服务提供者,消费者该如何选择???
如果有多个提供者,那么就会按照 负载均衡(后期续) 的要求挑选一个发送即可。
解决问题3 :消费者如何得知服务提供者的健康状态(服务器是否挂了)???
- 服务提供者会向Eureka发送心跳包,如果心跳中断,Eureka就会将其剔除
- 服务消费者就可以拉取到的都是最新的数据
注册中心搭建
导包
添加注解
配置文件
Eureka自己本身就是一个微服务其目的就是为了多个Eureka相互注册
此时已经配置完成,打开浏览器输入地址即可访问到信息页面
服务注册
导包
配置
IDEA中启动多实例(非必须)
这里的目的主要是展示多个User-Service微服务,所以要注册两个
多启动后信息界面出现两个实例
服务消费
服务已经注册了,要如何消费呢???
刚刚该微服务已经配置好了Eureka(也就是 服务注册 )(导包、配置地址)
上一篇已经写到了使用RestTemplate,这里一样也使用,只不过和之前有点改动
1. 使用服务名称来代替ip和端口
2. 负载均衡
如果启动了多个实例,则采用负载均衡的方式