Cos'è Zuul?
Zuul Server è un'applicazione API Gateway. Gestisce tutte le richieste ed esegue il routing dinamico delle applicazioni di microservizi. Funziona come una porta d'ingresso per tutte le richieste. È anche noto come Server perimetrale.
Zuul è progettato per abilitare routing dinamico, monitoraggio, resilienza, E sicurezza. Può anche instradare le richieste a più Gruppi Amazon Auto Scaling .
Per esempio, /api/prodotti sono mappati su Prodotto servizio e /api/utente è mappato su utente servizio. Il Server Zuul instrada dinamicamente le richieste alla rispettiva applicazione backend.
Perché usiamo Zuul?
Il volume e la varietà del traffico dell'API Netflix a volte causano problemi di produzione che si verificano rapidamente e senza preavviso. Quindi abbiamo bisogno di un sistema che ci permetta di cambiare rapidamente comportamento per reagire a queste situazioni.
Zuul offre una gamma di diversi tipi di filtri che ci consente di applicare rapidamente e agilmente funzionalità al nostro servizio edge. I filtri svolgono le seguenti funzioni:
Componenti Zuul
Componenti di Zuul 2.x:
Componenti di Zuul 1.x:
Configurazione del server API Gateway Zuul
Ci sono tre passaggi per configurare il gateway API Zuul:
- Crea un componente per il gateway API Zuul
- Decidi le cose che dovrebbe fare il Gateway API Zuul
- Tutte le richieste importanti sono configurate per passare attraverso lo Zuul API Gateway
Segui i passaggi per configurare il server Zuul API Gateway.
Passo 1: Aprire Inizializzazione primavera https://start.spring.io .
Passo 2: Fornire il Gruppo nome. Abbiamo fornito com.javatpoint.microservices.
Passaggio 3: Fornire il Artefatto. Abbiamo fornito netflix-zuul-api-gateway-server.
Passaggio 4: Aggiungi le seguenti dipendenze: Zuul, Eureka Discovery, Attuatore, E Strumenti di sviluppo.
Passaggio 5: Clicca sul creare pulsante. Inizia a inserire il progetto cerniera lampo file e scaricarlo.
Passaggio 6: estrazione il file zip e incollalo nell'area di lavoro di Spring Tool Suite.
Passaggio 7: importa il progetto nell'IDE STS.
File -> Importa -> Progetti Maven esistenti -> Sfoglia -> Seleziona netflix-zuul-api-gateway-server -> Seleziona cartella -> Fine
L'importazione richiede del tempo.
Passaggio 8: Apri il NetflixZuulApiGatewayServerApplication.java file e abilitare il proxy zuul e il discovery client utilizzando le annotazioni @EnableZuulProxy E @EnableDiscoveryClient, rispettivamente .
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); } }
Passaggio 9: Aprire proprietà.applicazione file e configurare il file nome dell'applicazione, porta, E server dei nomi eureka .
proprietà.applicazione
spring.application.name=netflix-zuul-api-gateway-server server.port=8765 eureka.client.service-url.default-zone=http://localhost:8765/eurekaClicca qui per scaricare netflix-zuul-api-gateway-server