POM文件依赖
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-gateway</artifactId>
<version>3.0.2</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
我在父组件中加入的nacos的相关依赖如下:
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>${nacos.version}</version>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>${nacos.version}</version>
</dependency>
nacos的版本如下:
<properties>
<nacos.version>2021.1</nacos.version>
</properties>
gateway的application.yml文件配置如下:
server:
port: 9040
spring:
application:
name: gateway
cloud:
gateway:
routes:
- id: consumer
uri: lb://consumer
# uri: http://localhost:9010
predicates:
- Path=/**
nacos:
discovery:
server-addr: localhost:8848
metadata:
preserved.heart.beat.interval: 3 #心跳间隔。时间单位:秒。心跳间隔
preserved.heart.beat.timeout: 6 #心跳暂停。时间单位:秒。 即服务端6秒收不到客户端心跳,会将该客户端注册的实例设为不健康:
preserved.ip.delete.timeout: 9 #Ip删除超时。时间单位:秒。即服务端9秒收不到客户端心跳,会将该客户端注册的实例删除:
当我通过uri: localhost:9010去调用服务时,是可以调用的,但是当我用uri lb://consumer时就无法调用服务,报错503.
解决办法是:(实例项目fhadmin.cn)
加入feign依赖。
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-gateway</artifactId>
<version>3.0.2</version>
</dependency>
<!--fegin组件-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
<version>3.0.2</version>
</dependency>
<!-- Feign Client for loadBalancing -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-loadbalancer</artifactId>
<version>3.0.2</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
猜测原因:nacos兼容feign,feign集成ribbon,默认实现负载均衡;或许是nacos不兼容springcloud gateway自带的ribbon。
相关推荐
基于Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element的后台管理系统和小程序,可以提供强大的功能和支持RBAC动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能。...
在本示例 "spring-cloud-gateway-demo.zip" 中,我们看到它与另一个流行的微服务组件 —— Spring Cloud Alibaba Nacos 结合使用,展示了如何构建一个动态的服务发现和配置的解决方案。 Nacos 是阿里巴巴开源的一款...
idea spring cloud+nacos+geteway完整demo java spring cloud项目下载 spring cloud+nacos+geteway项目下载 需要先安装nacos,不要安装zk 我有另外一个下载,可以下载nacos和安装教程
本项目重点介绍了如何将Spring Cloud Alibaba 的 Sentinel、OpenFeign 和 Nacos 与 Seata 结合使用,以实现服务治理、流量控制、服务发现以及分布式事务的解决方案。 1. **Sentinel**: Sentinel 是阿里巴巴开源的...
《SpringCloud Alibaba + Nacos + Gateway 整合详解》 在微服务架构中,Spring Cloud Alibaba 是一个重要的组件集合,它提供了丰富的中间件用于构建分布式系统。Nacos 作为 Spring Cloud Alibaba 的核心组件之一,...
2. **配置服务发现**:如果你的微服务已经使用了 Spring Cloud Alibaba 的 Nacos 或 Eureka 作为服务注册与发现中心,那么 Gateway 需要配置相应的服务发现组件,通过读取服务注册表来获取微服务的地址。 3. **定义...
2. **引入依赖**:在每个服务的 `pom.xml` 文件中引入 Spring Cloud Alibaba 相关的依赖,如 `spring-cloud-starter-alibaba-nacos-discovery`,`spring-cloud-starter-alibaba-sentinel` 等。 3. **配置 Nacos**:...
在Spring Cloud Alibaba中,Feign与Nacos结合,可以实现服务间的透明调用。开发者只需定义接口,Feign会自动生成实现类,自动完成请求发送和结果处理。这样不仅提高了开发效率,还降低了服务间的耦合度。 3. **...
6. **Alibaba Cloud Gateway**:基于Spring Cloud Gateway的云原生API网关,提供了路由、过滤器等功能,用于构建微服务的统一入口。 学习Spring Cloud Alibaba,你需要理解这些组件的工作原理、配置方式以及如何在...
在IT行业中,Spring Cloud Alibaba是一款备受推崇的微服务框架,它为开发者提供了构建分布式系统的一系列工具和服务。这个“springcloudalibaba微服务dubbo+sentinel+gateway+zookeeper+nacos的demo”压缩包文件,...
分布式系统的认证和授权 分布式架构采用 Spring Cloud Alibaba 认证和授权采用 Spring Security OAuth2.0 实现方法级权限控制 网关采用 gateway 中间件 服务注册和发现采用 nacos
Spring Cloud Alibaba是Spring Cloud下的一个子项目,Spring Cloud ...本课程带你深入掌握基于Spring Cloud Alibaba技术栈的微服务开发技术,包括nacos、sentinel、seata、gateway、skywalking等,培养独立进行企业微
1. **Nacos**:Nacos作为Spring Cloud Alibaba的核心组件,是一个动态配置服务和命名服务。它可以用来集中管理应用的配置,使得在分布式环境中,配置更新能够实时同步到各个服务节点。 2. **Sentinel**:Sentinel是...
SpringCloud Alibaba是阿里巴巴提供的一个全面的微服务解决方案,它包含了多个子项目,如Nacos、Sentinel、Seata等,用于构建分布式应用。在本场景中,我们将关注SpringCloud Gateway和Nacos的整合,以及OpenFeign的...
以电商项目为线索,快速掌握 JDK17 + springboot3 + springcloud Alibaba 专栏源码。 2 技术选型 JDK17 持久层: MyBatis-Plus 数据库: MySQL5.7 其他: SpringCloud Alibaba 技术栈 服务注册与发现:Nacos ...
Nacos是Alibaba开源的一款针对云应用的服务发现和配置管理平台,它在SpringCloud生态中扮演着重要的角色,特别是在服务注册与配置中心的功能上。 Nacos 1.3.0是其最新版本,相较于之前的版本,可能包含性能优化、新...
《Spring Cloud Alibaba Nacos、Feign与Sentinel的整合应用详解》 在现代微服务架构中,服务治理、服务调用以及流量控制是至关重要的环节。Spring Cloud Alibaba作为国内广泛使用的微服务框架,提供了丰富的组件来...
在高版本的Spring Boot Cloud中,你可能需要处理一些兼容性问题,比如Spring Cloud Gateway或Spring Cloud Netflix Eureka的适配。确保你的Spring Boot Cloud版本与Nacos的版本兼容,避免出现不兼容导致的问题。 ...
【SpringCloud Alibaba】课程主要讲解了微服务相关的概念和技术,包括单体、分布式、集群的理论知识,以及SpringCloud生态中的关键组件。本课程旨在帮助学员深入理解和掌握微服务架构的相关概念,通过学习Spring...
一篇很好的springCloud学习的思维导读,详细的介绍了,springCloud的搭建步骤以及各组件的说明讲解 涵盖 Eureka服务注册与发现 Zookeeper服务注册与发现 Consul服务注册与发现 Ribbon负载均衡服务调用 OpenFeign...