熬夜肝了这篇Spring Cloud Gateway的功能及综合使用 (2)

主要加入 spring-cloud-starter-netflix-eureka-server 依赖

registry-service - application.yml 配置文件 #端口 server: port: 8761 #应用名称 spring: application: name: eureka-server eureka: instance: # 使用 ip 代替实例名 prefer-ip-address: true # 实例的主机名 hostname: ${spring.cloud.client.ip-address} # 实例的 ID 规则 instance-id: ${spring.cloud.client.ip-address}:${spring.application.name}:${server.port} client: # 是否向注册中心注册自己 registerWithEureka: false # 是否向注册中心获取注册信息 fetchRegistry: false serviceUrl: # 注册中心地址 defaultZone: ${eureka.instance.hostname}:${server.port}/eureka/

这里使用了默认的 8761 端口,当然也可以更改,不过在发现调用服务端的注册中心地址端口要与它一致

registry-service - 启动类 package com.zwc; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer; @SpringBootApplication @EnableEurekaServer public class SpringcloudGatewayRegistryServiceApplication { public static void main(String[] args) { SpringApplication.run(SpringcloudGatewayRegistryServiceApplication.class, args); } }

在启动类中添加 @EnableEurekaServer 注解表示此工程是注册中心

registry-service - 启动项目

项目启动成功后访问 :8761/ 即可看到 eureka-server 主页面

熬夜肝了这篇Spring Cloud Gateway的功能及综合使用

注:由于服务工程 A 和服务工程 B 除端口不一致以外,其他代码基本一致,所以服务工程 B 不再赘述

a-service(服务工程 A) a-service - POM 文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 "> <modelVersion>4.0.0</modelVersion> <!-- 继承父 --> <parent> <groupId>com.zwc</groupId> <artifactId>springcloud-gateway-a-service</artifactId> <version>1.0</version> </parent> <!-- 三坐标 --> <groupId>com.zwc</groupId> <artifactId>springcloud-gateway-a-service-core</artifactId> <version>1.0</version> <!-- 工程名称描述 --> <name>springcloud-gateway-a-service-core</name> <description>服务工程 - A 核心</description> <!-- 打包方式 --> <packaging>jar</packaging> <!-- 在 properties下声明相应的版本信息,然后在dependency下引用的时候用 ${} 就可以引入该版本jar包了 --> <properties> </properties> <!-- 加入依赖 --> <dependencies> <!-- commons工程 依赖 --> <dependency> <groupId>com.zwc</groupId> <artifactId>springcloud-gateway-commons</artifactId> <version>1.0</version> </dependency> <!-- api工程 依赖 --> <dependency> <groupId>com.zwc</groupId> <artifactId>springcloud-gateway-a-service-api</artifactId> <version>1.0</version> </dependency> <!-- springboot web 依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- 提供者消费者 --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> </dependencies> <!-- 插件依赖 --> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>

加入spring-cloud-starter-netflix-eureka-client依赖

a-service - application.yml 配置文件 #端口 server: port: 9000 #应用名称 spring: application: name: gateway-service eureka: instance: # 使用 ip 代替实例名 prefer-ip-address: true # 实例的主机名 hostname: ${spring.cloud.client.ip-address} # 实例的 ID 规则 instance-id: ${spring.cloud.client.ip-address}:${spring.application.name}:${server.port} client: serviceUrl: # 注册中心地址 defaultZone: ${eureka.instance.hostname}:8761/eureka/

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsfjff.html