OpenFeign+NACOS实现服务的注册与发现和负载均衡
开发环境
基于:IntelliJ IDEA
、Maven构建工具
、JDK1.8
、SpringBoot 2.3.4
、Spring4.3.28
编写。
官人如需使用 IDEA 请阅读教程:IntelliJ IDEA
官人如需使用 Maven 请阅读教程:Maven 构建工具的下载与安装
更多干货
请参考:《穿越 Java 之 语法基础篇》 系列文章
请参考:《穿越 Java 之 Web基础篇 》系列文章
请参考:《穿越 Java 之 开发必备框架篇 》 系列文章
请阅读:《穿越 Java 之 SpringBoot》系列文章
请阅读:《穿越 Java 之 SpringCloud》 系列文章
需求
实现 user 服务 对 order 服务进行调用。使用OpenFeign+ NACOS+Ribbon 实现服务的注册与发现和负载均衡。
分析
-
1. 接下来就是选择 NACOS 进行服务的注册,可参考:NACOS服务注册
-
2. 然后需要选择OpenFeign组件 :他是一个HTTPclient的一个简单的调用方式。
可参考:GitHupz网址:https://github.com/OpenFeign/feign -
3. 写一个要调用远端的接口和方法声明。
-
4. 使用接口调用方法
使用
User-service
目录结构
pom.xml 依赖
- 整合springcloud–>spring-cloud-dependencies
- 整合spring cloud alibaba–>spring-cloud-alibaba-dependencies
- 整合spring cloud netflix–>spring-cloud-netflix-dependencies
- 整合openfeign --> spring-cloud-starter-openfeign
- 其实openfeign 自己已经整合了ribbon。
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.4.RELEASE</version>
<relativePath/>
</parent>
<groupId>com.example</groupId>
<artifactId>user-service</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>user-service</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<!--为项目 整合openfeign-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<!--为项目 整合nacos-client-->
<dependency>
<groupId>org.springframework.cloud</groupId>