Hvad er Zuul?
Zuul Server er en API Gateway-applikation. Den håndterer alle anmodninger og udfører den dynamiske routing af mikroserviceapplikationer. Den fungerer som en hoveddør til alle forespørgsler. Det er også kendt som Edge Server.
Zuul er bygget til at aktivere dynamisk routing, overvågning, robusthed, og sikkerhed. Det kan også dirigere anmodningerne til flere Amazon Auto Scaling Groups .
For eksempel, /api/produkter er kortlagt til produkt service og /api/bruger er kortlagt til bruger service. Zuul-serveren dirigerer anmodningerne dynamisk til den respektive backend-applikation.
Hvorfor bruger vi Zuul?
Mængden og variationen af Netflix API-trafik resulterer nogle gange i produktionsproblemer, der opstår hurtigt og uden varsel. Så vi har brug for et system, der giver os mulighed for hurtigt at ændre adfærd for at reagere på disse situationer.
Zuul tilbyder en række forskellige typer filtre der giver os mulighed for hurtigt og smidigt at anvende funktionalitet til vores edge-service. Filtrene udfører følgende funktioner:
Zuul komponenter
Zuul 2.x komponenter:
Zuul 1.x komponenter:
Opsætning af Zuul API Gateway Server
Der er tre trin til opsætning af Zuul API Gateway:
- Opret en komponent til Zuul API Gateway
- Beslut de ting, som Zuul API Gateway skal gøre
- Alle de vigtige anmodninger er konfigureret til at passere gennem Zuul API Gateway
Følg trinene for at konfigurere Zuul API Gateway-serveren.
Trin 1: Åben Spring Initializr https://start.spring.io .
Trin 2: Giv den Gruppe navn. Vi har ydet com.javatpoint.microservices.
Trin 3: Giv den Artefakt. Vi har ydet netflix-zuul-api-gateway-server.
Trin 4: Tilføj følgende afhængigheder: Zuul, Eureka Discovery, Aktuator, og DevTools.
Trin 5: Klik på Frembringe knap. Det begynder at pakke projektet ind lynlås fil og download den.
Trin 6: Udtræk zip-filen og indsæt den i Spring Tool Suites arbejdsområde.
Trin 7: Importer projektet i STS IDE.
Fil -> Importer -> Eksisterende Maven-projekter -> Gennemse -> Vælg netflix-zuul-api-gateway-server -> Vælg Mappe -> Udfør
Det tager lidt tid at importere.
Trin 8: Åbn NetflixZuulApiGatewayServerApplication.java fil og aktiver zuul proxy og opdagelsesklient ved at bruge annoteringerne @EnableZuulProxy og @EnableDiscoveryClient, henholdsvis .
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); } }
Trin 9: Åben applikationsegenskaber fil og konfigurer applikationsnavn, port, og eureka navngivningsserver .
applikationsegenskaber
spring.application.name=netflix-zuul-api-gateway-server server.port=8765 eureka.client.service-url.default-zone=http://localhost:8765/eurekaKlik her for at downloade netflix-zuul-api-gateway-server