溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SpringCloud微服務架構中Zuul網關怎么使用

發布時間:2022-02-24 17:45:21 來源:億速云 閱讀:180 作者:iii 欄目:開發技術

這篇“SpringCloud微服務架構中Zuul網關怎么使用”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“SpringCloud微服務架構中Zuul網關怎么使用”文章吧。

簡介

  • Zuul是Spring Cloud全家桶中的微服務API網關。 所有從設備或網站來的請求都會經過Zuul到達后端的Netflix應用程序

  • Zuul 主要提供路由(請求轉發)和過濾

  • Zuul 最終會注入Eureka

提供: 代理,過濾和路由三大功能

使用

導入依賴

    <!--zuul組件、zuul需要注冊至eureka中-->
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-zuul</artifactId>
        <version>1.4.6.RELEASE</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        <version>2.0.2.RELEASE</version>
    </dependency>

配置文件

server:
  port: 9527
spring:
  application:
    name: springcloud-zuul
eureka:
  client:
    service-url:
      defaultZone: http://eureka1:7001/eureka/,http://eureka2:7002/eureka/,http://eureka3:7003/eureka/

  instance:
    instance-id: zull9527.com #別名

開啟支持

@SpringBootApplication
@EnableZuulProxy//開啟zuul支持,默認注冊到Eureka
public class Zuul9527Application {
    public static void main(String[] args) {
        SpringApplication.run(Zuul9527Application.class,args);
    }
}

此時我們可以通過 地址:端口號/服務名稱/服務 來訪問了

注意:此處需在host文件添加 127.0.01 www,zuultest.com

為了不使我們的服務名稱暴露我們可以在配置文件中添加

zuul:
  routes:
    xxx.serviceId: provider-name # xxx代表任意名稱
    xxx.path: /mydept/** 
  ignored-services: provider-name # 不再通過這個路徑訪問即不允許通過服務名直接訪問
  prefix: /lin # 訪問路徑必須加上前綴/lin

此時只有通過 地址:端口號/lin/mydept/服務 來訪問

補充: 為什么在配置文件中是使用serviceId和path 在zull中route是以鍵值對的形式存放的

public void setRoutes(Map<String, ZuulRoute> routes) {
		this.routes = routes;
	}

而在ZuulProperties中

/**
 * Represents a Zuul route.
 */
public static class ZuulRoute {
        /**
         * The path (pattern) for the route, e.g. /foo/**.
         */
        private String path;
        /**
	* The service ID (if any) to map to this route. You can specify a physical URL or
        * a service, but not both.
	*/
         private String serviceId;
      }

以上就是關于“SpringCloud微服務架構中Zuul網關怎么使用”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女