caffeine
1.eureka:
创建eureka项目父子工程pom文件分别是什么样的:
父工程 pom.xml(打包方式:pom)
<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
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>springcloud-eureka-parent</artifactId>
<version>1.0.0</version>
<packaging>pom</packaging>
<modules>
<module>eureka-server</module>
<module>eureka-client</module>
</modules>
<!-- 统一依赖版本管理 -->
<dependencyManagement>
<dependencies>
<!-- Spring Boot -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.3.12.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- Spring Cloud Hoxton (Eureka 兼容版本) -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Hoxton.SR12</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<properties>
<java.version>1.8</java.version>
</properties>
</project>
-----------------
<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
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.example</groupId>
<artifactId>springcloud-eureka-parent</artifactId>
<version>1.0.0</version>
</parent>
<artifactId>eureka-server</artifactId>
<dependencies>
<!-- Eureka Server -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<!-- Web 依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
</project>
--------
启动类上添加注解@EnableEurekaServer
--------
yml文件中添加配置:
server:
port: 10086 # 服务端口
spring:
application:
name: eureka-server # eureka服务名称
eureka:
client:
service-url: #eureka服务地址
defaultZone: http://localhost:10086/eureka/
-----------------------------------------------------
2.nacos
1.导入依赖:
<!--nacos依赖-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2023.0.1.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
2.子工程引用
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
3.配置:
spring:
application:
name: eureka-server # 服务名称
cloud:
nacos:
server-addr: localhost:8848
4.给服务配置所属集群:
spring:
application:
name: nacos-server # 服务名称
cloud:
nacos:
server-addr: localhost:8848
discovery:
cluster-name: HZ
5.
--------------------------------------------
3.网关gateway
1.引入依赖
<!--nacos服务注册依赖-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<!--网关gateway依赖-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-gateway</artifactId>
</dependency>
2.编写配置及nacos地址
server:
port: 10010
spring:
application:
name: gateway #网关服务名称
cloud:
nacos:
server-addr: localhost:8848 #nacos地址
gateway:
routes: #路由规则,可以配置多个
- id: user-service #路由标识,必须唯一 ,可以看作单个服务的包名
uri: lb://userservice #路由目标地址 ,就是微服务中@feignClient的value值
predicates: #路由断言,判断路径是否符合规则
- Path=/user/** #路径断言,判断路径是否以/user开头
- id: order-service
uri: lb://orderservice
predicates:
- Path=/order/**
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Hexo!