안전한 API유통과 Client 요청별로 유연하게 대처하기 위함.
인증/인가, 로드밸런싱 & 라우팅, 로깅, Circuit Breaker의 역할을 수행한다.
Zuul 은 서블릿 2.5 위에서 Blocking API들을 사용하여 개발됨 👉 웹소켓과 같은 길게 지속되는 연결을 지원하지 않는다.
SCG는 Spring Framework 5, Project Reactor 그리고 Spring Boot2 위에서 non-Blocking API들을 사용하여 개발됨 👉 웹소켓이 지원되고 Spring 과 잘 연동되기 때문에 개발자 경험을 매우 크게 향상시킨다.
Gateway Handler Mapping이 Prediates에 지정한 경로와 일치하는지 판단하고 Gateway Web Handler는 지정된 필터들을 통해 요청을 전송한다.
필터들은 요청과 응답에 대한 처리를 수행한다.
✔ Netty는 비동기 네트워킹을 지원하는 어플리케이션 프레임워크임.