1. 程式人生 > 程式設計 >SpringCloud Zuul服務功能與使用方法解析

SpringCloud Zuul服務功能與使用方法解析

Zuul是什麼?

  Zuul包含了對請求的路由和過濾兩個最主要的功能:

    其中路由功能負責將外部請求轉發到具體的微服務例項上,是實現外部訪問統一入口的基礎而過濾器功能則負責對請求的處理過程進行干預,是實現請求校驗、服務聚合等功能的基礎.

Zuul和Eureka進行整合,將Zuul自身註冊為Eureka服務治理下的應用,同時從Eureka中獲得其他微服務的訊息,也即以後的訪問微服務都是通過Zuul跳轉後獲得.

  注意:Zuul服務最終還是會註冊進Eureka

  提供=代理+路由+過濾三大功能

  •建立專案,新增依賴

<dependencies>
    <!--zuul-->
    <!--erueka-->
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-zuul</artifactId>
      <version>1.4.6.RELEASE</version>
    </dependency>  //Zuul依賴
    <!--Hystrix依賴~-->
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-hystrix</artifactId>
      <version>1.4.6.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-hystrix-dashboard</artifactId>
      <version>1.4.6.RELEASE</version>
    </dependency>
    <!--Ribbon-->
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-ribbon</artifactId>
      <version>1.4.6.RELEASE</version>
    </dependency>
    <!--erueka-->
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-eureka</artifactId>
      <version>1.4.6.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>com.kuang</groupId>
      <artifactId>springcloud-api</artifactId>
      <version>1.0-SNAPSHOT</version>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-devtools</artifactId>
    </dependency>
  </dependencies>

  •編寫application.yml配置

server:
 port: 9527

spring:
 application:
  name: springcloud-zuul #微服務註冊的名字
eureka:
 client:
  service-url:
   defaultZone: http://localhost:7001/eureka/,http://localhost:7002/eureka/,http://localhost:7003/eureka/ #去三個叢集中發現其它服務
 instance:
  instance-id: zuul9527.com
  prefer-ip-address: true #顯示真實ip
info:
 app.name: kuang-springcloud
 company.name: blog.kuangstudy.com

zuul:
 routes:
  mydept.serviceId: springcloud-provider-dept #原來需要這個訪問
  mydept.path: /mydept/** #替代上面訪問
 ignored-services: springcloud-provider-dept #忽略,不能再使用這個路徑訪問。
 #ignored-services: "*" 隱藏全部服務
 prefix: /kuang #設定公共訪問字首

  •去hosts裡面新增一個本地ip         //看自己選擇

  •開啟功能  

@EnableZuulProxy

  •測試

SpringCloud Zuul服務功能與使用方法解析

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。