javascript
Spring Cloud Alibaba - 23 Gateway初体验
文章目錄
- 概述
- 網關的作用
- 官網
- 來個栗子
- step1 搞依賴
- step2 搞注解 (gateway沒有注解)
- step3 搞配置
- 其他工程 & 驗證
- 參數解讀
- spring.cloud.gateway.discovery.locator.enabled
- spring.cloud.gateway.enabled
- 轉發過程
- 源碼
概述
Spring Cloud Gateway是Spring Cloud官方推出的第二代網關框架,用于取代Zuul網關。
基于Netty,WebFlux . 由于不是Sevlet容器,不能打成war包, 只支持SpringBoot2.X,不支持1.x
基于Netty,WebFlux . 由于不是Sevlet容器,不能打成war包, 只支持SpringBoot2.X,不支持1.x
基于Netty,WebFlux . 由于不是Sevlet容器,不能打成war包, 只支持SpringBoot2.X,不支持1.x
重要的事情說三遍。
網關的作用
網關常見的功能有路由轉發、權限校驗、限流控制等作用
官網
https://docs.spring.io/spring-cloud-gateway/docs/current/reference/html/
來個栗子
創建一個gateWay的工程 artisan-cloud-gateway
step1 搞依賴
<dependencies><!--gateway --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-gateway</artifactId></dependency><!--nacos--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-nacos-discovery</artifactId></dependency><!--actuator--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency></dependencies>step2 搞注解 (gateway沒有注解)
寫個服務發現的注解(高版本也可以不寫),gateway沒有注解
step3 搞配置
server:port: 8888#gateway注冊到nacos上的服務名稱spring:application:name: api-gatewaycloud: #nacosnacos:discovery:server-addr: 1.117.97.88:8848gateway: #gatewaydiscovery:locator:enabled: false # 是否可以通過微服務的名稱直接調用接口 【默認值false, 建議保持false】enabled: true # 是否開啟服務網關 management:endpoints:web:exposure:include: '*'endpoint:health:show-details: always # 打開端點詳情其他工程 & 驗證
分別啟動
artisan-cloud-gateway 【8888】
artisan-cloud-gateway-order【8080】
artisan-cloud-gateway-product【8084】
再確認下【artisan-cloud-gateway】的配置文件
通過網關地址 端口為8888訪問訂單微服務
我們調整下參數,開啟拉取nacos配置
重啟應用,重新訪問
如果我們 禁用網關呢?
重啟應用,重新訪問
參數解讀
spring.cloud.gateway.discovery.locator.enabled
啟網關拉取nacos的服務 即是否可以通過微服務的名稱直接調用接口 【默認值false, 建議保持false】
開啟了,容易暴漏后端服務
spring.cloud.gateway.enabled
網關的開啟與關閉 , 需要開啟
轉發過程
我們簡單看下 spring.cloud.gateway.discovery.locator.enabled 設置為true后, 網關是如何處理這些請求的 ,后面再解讀源碼
源碼
https://github.com/yangshangwei/SpringCloudAlibabMaster
總結
以上是生活随笔為你收集整理的Spring Cloud Alibaba - 23 Gateway初体验的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring Cloud Alibaba
- 下一篇: Spring Cloud Alibaba