?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的版本如下:
<properties>
? ? <nacos.version>2021.1</nacos.version>
</properties>
gateway的application.yml文件配置如下:
//fhadmin.cn
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: http://localhost:9010去調用服務時做葵,是可以調用的占哟,但是當我用uri lb://consumer時就無法調用服務,報錯503.
解決辦法是:
加入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,默認實現(xiàn)負載均衡瘫筐;或許是nacos不兼容springcloud gateway自帶的ribbon蜜暑。實現(xiàn)案例 fhadmin.cn