logo

Zuul API átjáró

Mi az a Zuul?

A Zuul Server egy API Gateway alkalmazás. Kezeli az összes kérést, és végrehajtja a mikroszolgáltatási alkalmazások dinamikus útválasztását. Bejárati ajtóként működik minden igényhez. Úgy is ismert, mint Edge szerver.

A Zuul lehetővé teszi dinamikus útválasztás, monitorozás, rugalmasság, és Biztonság. A kéréseket többre is irányíthatja Amazon Auto Scaling Groups .

Például, /api/products vannak leképezve a termék szolgáltatás és /api/user le van képezve a felhasználó szolgáltatás. A Zuul Server dinamikusan továbbítja a kéréseket a megfelelő háttéralkalmazáshoz.

Miért használjuk a Zuult?

A Netflix API forgalom nagysága és változatossága időnként olyan gyártási problémákat okoz, amelyek gyorsan és figyelmeztetés nélkül jelentkeznek. Szükségünk van tehát egy olyan rendszerre, amely lehetővé teszi a viselkedés gyors megváltoztatását, hogy reagáljunk ezekre a helyzetekre.

A Zuul különféle típusokat kínál szűrők amely lehetővé teszi számunkra, hogy gyorsan és fürgén alkalmazzuk a funkcionalitást élszolgáltatásunkban. A szűrők a következő funkciókat látják el:

    Hitelesítés és biztonság:Minden erőforráshoz hitelesítési követelményeket biztosít.
    Insights és Monitoring:Jelentős adatokat és statisztikákat követ, amelyek pontos képet adnak a termelésről.
    Dinamikus útválasztás:Szükség szerint dinamikusan irányítja a kéréseket a különböző támogatott fürtökhöz.Stressz teszt:Növeli a fürt forgalma a teljesítmény tesztelése érdekében.Tehercsökkentés:Kapacitást foglal le minden típusú kérelemhez, és eldobja a korlátot meghaladó kérést.Statikus válaszkezelés:Néhány választ közvetlenül a szélén épít fel, ahelyett, hogy egy belső fürtbe továbbítaná azokat.Többrégiós rugalmasság:A kéréseket AWS-régiók között irányítja, hogy diverzifikálja az ELB-használatunkat.

Zuul komponensek

A Zuul 2.x összetevői:

    zuul-core:Ez egy olyan könyvtár, amely a Zuul 2.0 alapvető funkcióit tartalmazza.zuul-minta:Ez egy minta illesztőprogram-alkalmazás a Zuul 2.0-hoz

A Zuul 1.x összetevői:

    zuul-core:Ez határozza meg az alapvető funkciókat.zuul-simple-webapp:Egy webalkalmazás, amely egy egyszerű példát mutat be a zuul-core alkalmazás létrehozására.zuul-netflix:Ez egy olyan könyvtár, amely további NetflixOSS összetevőket ad hozzá a Zuulhoz.zuul-netflix-webapp:Ez egy webalkalmazás, amely együtt csomagolja a zuul-core és a zuul-netflix fájlokat.

A Zuul API Gateway Server beállítása

Vannak három lépések a Zuul API Gateway beállításához:

  • Hozzon létre egy összetevőt a Zuul API Gateway számára
  • Döntse el, mit tegyen a Zuul API Gateway
  • Az összes fontos kérés úgy van konfigurálva, hogy áthaladjon a Zuul API-átjárón

Kövesse a lépéseket a Zuul API Gateway szerver beállításához.

1. lépés: Nyisd ki Tavaszi inicializálás https://start.spring.io .

2. lépés: Adja meg a Csoport név. biztosítottuk com.javatpoint.microservices.

3. lépés: Adja meg a Műalkotás. biztosítottuk netflix-zuul-api-gateway-server.

4. lépés: Adja hozzá a következő függőségeket: Zuul, Eureka Discovery, aktuátor, és DevTools.

Zuul API átjáró

5. lépés: Kattintson a generál gomb. Elkezdi becsomagolni a projektet postai irányítószám fájlt, és töltse le.

Zuul API átjáró

6. lépés: Kivonat zip fájlt, és illessze be a Spring Tool Suite munkaterületére.

7. lépés: Importálás a projekt az STS IDE-ben.

Fájl -> Importálás -> Meglévő Maven-projektek -> Tallózás -> Kiválasztás netflix-zuul-api-gateway-server -> Mappa kiválasztása -> Befejezés

Az importálás némi időt vesz igénybe.

8. lépés: Nyissa meg a NetflixZuulApiGatewayServerApplication.java fájlt, és engedélyezze a zuul proxyt és Discovery klienst a megjegyzések használatával @EnableZuulProxy és @EnableDiscoveryClient, illetőleg .

NetflixZuulApiGatewayServerApplication.java

 package com.javatpoint.microservices.netflixzuulapigatewayserver; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.client.discovery.EnableDiscoveryClient; import org.springframework.cloud.netflix.zuul.EnableZuulProxy; @EnableZuulProxy @EnableDiscoveryClient @SpringBootApplication public class NetflixZuulApiGatewayServerApplication { public static void main(String[] args) { SpringApplication.run(NetflixZuulApiGatewayServerApplication.class, args); } } 

9. lépés: Nyisd ki alkalmazás.tulajdonságok fájlt és konfigurálja a alkalmazás neve, port, és eureka névadó szerver .

alkalmazás.tulajdonságok

 spring.application.name=netflix-zuul-api-gateway-server server.port=8765 eureka.client.service-url.default-zone=http://localhost:8765/eureka 
Kattintson ide a netflix-zuul-api-gateway-server letöltéséhez