当前开发环境下,微服务已经成为主流的开发架构。常见的注册中心有Nacos、Eureka等。本文旨在介绍使用nacos作为注册中心的开发步骤;关于Nacos的介绍在此不再赘述,可以参考官方介绍:Nacos文档;
本项目是通过Feign实现服务接口之间的调用;
PS:Feign是Netflix开发的声明式、模板化的HTTP客户端, Feign可以帮助我们更快捷、优雅地调用HTTP API。Feign
的英文表意为“假装,伪装,变形”, 可以理解为将HTTP报文请求方式伪装为简单的java接口调用方式。
1. 项目结构
本项目使用maven聚合工程来实现,结构如下:
其中server-api为通用API接口,借用dubbo的理念,封装通用接口;
nacos-producer作为服务生产方;
nacos-consumer作为服务消费方;
2. 创建父项目
父项目添加相关依赖
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
<version>2.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
<version>2.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>