java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))

微服务的一种架构,主要分为服务注册发现(Eureka、Nacos、Consul),服务远程调用(OpenFeign、Dubbo),服务链路监控(Zipkin、Sleuth),统一配置管理(SpringCloudConfig、Nacos),统一网关路由(SpringCloudGateway、Zuul),流量控制、降级(Hystix、Sentinel)。
视频资源教程下载:
https://pan.baidu.com/s/169SFtYEvel44hRJhmFTRTQ
提取码:1234
Day1:跨模块调用,服务注册发现(Eureka) 跨模块调用方法一:
使用RestTemplate,在application类中注册restTemplate,然后使用restTemplate.getForObject或postForObject发送http请求
java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))
文章图片

url为被调用模块的请求地址
java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))
文章图片

缺点:当被调用的服务为集群,调用者就不知道调用哪个端口的服务了,不可能固定一个端口的服务,需要负载均衡。
方法二,通过Eureka注册发现服务
java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))
文章图片

Eureka中分服务端,客户端;
服务端负责记录服务信息、心跳监控
客户端有两种:
服务提供者Provider:注册自己的信息到EurekaServer,每隔30秒向服务端发送一次心跳。
服务消费者Consumer:根据服务名称从EurekaServer中拉去服务列表、基于负载均衡选中一个微服务发起远程调用。
java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))
文章图片

使用: 服务端:

  1. 新建maven子模块eureka做服务端,pom文件加eureka服务端依赖:
    (版本号由父pom.xml指定,注意springboot和springcloud版本是否冲突,不然运行会报错)
    java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))
    文章图片
  2. 启动类添加注解@EnableEurekaServer,开启euerka
    java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))
    文章图片
  3. 配置文件配置eureka实列信息,并注册本身
    java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))
    文章图片

    打开端口相应页面
    java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))
    文章图片

    客户端:
  4. 引入依赖
    java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))
    文章图片
  5. 配置eureka客户端信息
    java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))
    文章图片

    模拟服务者集群:
    java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))
    文章图片

    最终eureka中心:
    java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))
    文章图片
负载均衡:Ribbon 【java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))】@LoadBalanced开启负载均衡的底层实现是ribbon
服务注册与配置管理(Nacos) 直接启动jar包的方式启动nacos,不需要新建模块管理
子pom注释掉eureka客户端依赖,使用nacos依赖
父pom导入springcloudAlibaba依赖在这里插入代码片
com.alibaba.cloud >spring-cloud-alibaba-dependencies> 2.2.5.RELEASE pom >import>

java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))
文章图片

服务的application.yml文件配置nacos信息
java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))
文章图片

负载均衡修改,优先使用同局域网下的服务
java|SpringCloud笔记一( 跨模块调用,服务注册发现(Eureka、Nacos))
文章图片

    推荐阅读