Spring/SpringCloudGateway
-
spring cloud gateway에서 기본으로 제공하는 필터 이외에 개발자가 원하는 필터를 추가하고 싶은 경우가 존재한다.이러한 경우에 어떻게 해야 하는지 알아보자. (https://docs.spring.io/spring-cloud-gateway/reference/spring-cloud-gateway/developer-guide.html) 필터의 경우에는 pre, post로 나누어진다.각각의 경우를 살펴보자. custom gateway filter GatewayFilterFactory를 반드시 implent 해야 한다. spring-cloud-gateway에서 기본으로 제공하는 AbstractGatewayFilterFactory를 상속받는 방법도 있다.클래스의 이름이 GatewayFilterFacto..
[SpringCloudGateway] Custom Filter 추가spring cloud gateway에서 기본으로 제공하는 필터 이외에 개발자가 원하는 필터를 추가하고 싶은 경우가 존재한다.이러한 경우에 어떻게 해야 하는지 알아보자. (https://docs.spring.io/spring-cloud-gateway/reference/spring-cloud-gateway/developer-guide.html) 필터의 경우에는 pre, post로 나누어진다.각각의 경우를 살펴보자. custom gateway filter GatewayFilterFactory를 반드시 implent 해야 한다. spring-cloud-gateway에서 기본으로 제공하는 AbstractGatewayFilterFactory를 상속받는 방법도 있다.클래스의 이름이 GatewayFilterFacto..
2025.05.19 -
GlobalFilter는 GatewayFilter와 같은 시그니처를 가진다.GlobalFilter와 GatewayFilter는 둘 다 같은 메서드 구조- filter(ServerWebExchange exchange, GatewayFilterChain chain)를 가지고 있음.하지만, GlobalFilter는 모든 라우트에 조건부로 적용되는 특별한 필터이다. Combined Global Filter and GatewayFilter Ordering요청이 특정 Route에 매칭되면GlobalFilter의 모든 인스턴스와 해당 라우트에 설정된 GatewayFilter들이 하나의 필터 체인(Filter Chain)으로 결합된다.이 필터 체인에 순서는 org.springframework.core.Ordered ..
[SpringCloudGateway] Global FilterGlobalFilter는 GatewayFilter와 같은 시그니처를 가진다.GlobalFilter와 GatewayFilter는 둘 다 같은 메서드 구조- filter(ServerWebExchange exchange, GatewayFilterChain chain)를 가지고 있음.하지만, GlobalFilter는 모든 라우트에 조건부로 적용되는 특별한 필터이다. Combined Global Filter and GatewayFilter Ordering요청이 특정 Route에 매칭되면GlobalFilter의 모든 인스턴스와 해당 라우트에 설정된 GatewayFilter들이 하나의 필터 체인(Filter Chain)으로 결합된다.이 필터 체인에 순서는 org.springframework.core.Ordered ..
2025.05.17 -
Spring Cloud Gateway에서는 기본으로 다양한 필터를 제공하는데 그중에서 CircuitBreaker 필터가 존재한다. 해당 필터를 사용하기 위해서는 spring-cloud-starter-circuitbreaker-reactor-resilience4j 디펜던시를 추가해주어야 한다.implementation 'org.springframework.cloud:spring-cloud-starter-circuitbreaker-reactor-resilience4j' 이제 resilience4j의 CircuitBreaker를 사용할 준비가 되었다.해당 디펜던시를 추가한 이후에 /actuator/prometheus의 메트릭을 보면 관련 내역들이 추가된 것을 확인할 수 있다.각각의 metric이 어떠한 내용을..
Resilience4j Circuitbreaker 관련 metric 모니터링Spring Cloud Gateway에서는 기본으로 다양한 필터를 제공하는데 그중에서 CircuitBreaker 필터가 존재한다. 해당 필터를 사용하기 위해서는 spring-cloud-starter-circuitbreaker-reactor-resilience4j 디펜던시를 추가해주어야 한다.implementation 'org.springframework.cloud:spring-cloud-starter-circuitbreaker-reactor-resilience4j' 이제 resilience4j의 CircuitBreaker를 사용할 준비가 되었다.해당 디펜던시를 추가한 이후에 /actuator/prometheus의 메트릭을 보면 관련 내역들이 추가된 것을 확인할 수 있다.각각의 metric이 어떠한 내용을..
2025.04.08 -
영상자료https://youtu.be/Ci_DsTkzcRY?si=sq061iV1GXtPEYxU다른 회사에서는 API gateway를 어떻게 쓰고 있는지 궁금해서 관련 영상을 찾아보다가 발견하게 되었다. API gateway를 개발 및 운영하는데 많은 도움이 될 거 같아 내용을 정리하게 되었다. 목차 API gateway란왜 API gateway가 필요할까배민의 API gateway API gateway란큰 범주에서 두 가지를 지원라우팅 - 클라이언트의 요청을 적절한 서비스로 전달 횡단 관심사 - 여러 서비스에서 공통으로 처리되어야 하는 문제를 중앙에서 일관되게 처리 인증, 보안, 모니터링, 탄력성 왜 API gateway가 필요할까모놀리식 -> 마이크로 서비스 변경되며 발생하는 문제점이 근본적인 원인으로..
배달의민족 API Gateway영상자료https://youtu.be/Ci_DsTkzcRY?si=sq061iV1GXtPEYxU다른 회사에서는 API gateway를 어떻게 쓰고 있는지 궁금해서 관련 영상을 찾아보다가 발견하게 되었다. API gateway를 개발 및 운영하는데 많은 도움이 될 거 같아 내용을 정리하게 되었다. 목차 API gateway란왜 API gateway가 필요할까배민의 API gateway API gateway란큰 범주에서 두 가지를 지원라우팅 - 클라이언트의 요청을 적절한 서비스로 전달 횡단 관심사 - 여러 서비스에서 공통으로 처리되어야 하는 문제를 중앙에서 일관되게 처리 인증, 보안, 모니터링, 탄력성 왜 API gateway가 필요할까모놀리식 -> 마이크로 서비스 변경되며 발생하는 문제점이 근본적인 원인으로..
2025.03.05