Co to jest Zuul?
Zuul Server to aplikacja API Gateway. Obsługuje wszystkie żądania i wykonuje dynamiczny routing aplikacji mikroserwisowych. Działa jak drzwi wejściowe dla wszystkich żądań. Znany jest również jako Serwer brzegowy.
Zuul został stworzony, aby umożliwić routing dynamiczny, monitorowanie, odporność, I bezpieczeństwo. Może także kierować żądania do wielu Grupy automatycznego skalowania Amazon .
Na przykład, /api/produkty są mapowane do produkt obsługa i /api/użytkownik jest mapowany do użytkownik praca. Serwer Zuul dynamicznie kieruje żądania do odpowiedniej aplikacji backendowej.
Dlaczego używamy Zuul?
Wielkość i różnorodność ruchu API Netflix czasami powoduje problemy produkcyjne, które pojawiają się szybko i bez ostrzeżenia. Potrzebujemy więc systemu, który pozwoli nam szybko zmienić zachowanie, aby zareagować na takie sytuacje.
Zuul oferuje szeroką gamę różnych typów filtry co pozwala nam szybko i sprawnie zastosować funkcjonalność w naszej usłudze brzegowej. Filtry spełniają następujące funkcje:
Komponenty Zuula
Komponenty Zuul 2.x:
Komponenty Zuula 1.x:
Konfigurowanie serwera bramy API Zuul
Tam są trzy kroki, aby skonfigurować bramę API Zuul:
- Utwórz komponent dla bramy Zuul API
- Zdecyduj, co ma robić Zuul API Gateway
- Wszystkie ważne żądania są skonfigurowane tak, aby przechodziły przez bramę API Zuul
Postępuj zgodnie z instrukcjami, aby skonfigurować serwer Zuul API Gateway.
Krok 1: otwarty Inicjalizator wiosny https://start.spring.io .
Krok 2: Zapewnić Grupa nazwa. Dostarczyliśmy com.javatpoint.microservices.
Krok 3: Zapewnić Artefakt. Dostarczyliśmy serwer-bramy netflix-zuul-api.
Krok 4: Dodaj następujące zależności: Zuul, Eureka Discovery, siłownik, I Narzędzia deweloperskie.
Krok 5: Kliknij na Generować przycisk. Rozpoczyna się pakowanie projektu do zamek błyskawiczny plik i pobierz go.
Krok 6: Wyodrębnij plik zip i wklej go w obszarze roboczym pakietu Spring Tool Suite.
Krok 7: Importuj projekt w STS IDE.
Plik -> Importuj -> Istniejące projekty Maven -> Przeglądaj -> Wybierz serwer-bramy netflix-zuul-api -> Wybierz folder -> Zakończ
Importowanie zajmuje trochę czasu.
Krok 8: Otworzyć NetflixZuulApiGatewayServerApplication.java plik i włącz serwer proxy Zuul i klienta wykrywania, korzystając z adnotacji @WłączZuulProxy I @EnableDiscoveryClient, odpowiednio .
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); } }
Krok 9: otwarty właściwości.aplikacji plik i skonfiguruj plik nazwa aplikacji, port, I serwer nazw eureka .
właściwości.aplikacji
spring.application.name=netflix-zuul-api-gateway-server server.port=8765 eureka.client.service-url.default-zone=http://localhost:8765/eurekaKliknij tutaj, aby pobrać serwer netflix-zuul-api-gateway-server