Spring/SpringCloudGateway
-
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 -
gateway의 역할 중에 하나는 서비스의 단일 진입점이다.서비스의 모든 요청이 들어오는 곳이니, accessLog를 남겨 호출이력을 관리할 수 있게 된다. Spring Cloud Gateway Reactive Server의 경우 netty를 HttpServer로 활용하니NettyWebServer에 accessLog 사용 방법을 알아보고, accessLog를 Customize 할 수 있는 방법을 알아보자. 기본적으로 Spring Cloud Gateway 가이드에 기본적인 설명이 나와있다. Add java property-Dreactor.netty.http.server.accessLogEnabled=true Add logback configuration access_log.log ..
[SpringCloudGateway] Netty AccessLog - Customizegateway의 역할 중에 하나는 서비스의 단일 진입점이다.서비스의 모든 요청이 들어오는 곳이니, accessLog를 남겨 호출이력을 관리할 수 있게 된다. Spring Cloud Gateway Reactive Server의 경우 netty를 HttpServer로 활용하니NettyWebServer에 accessLog 사용 방법을 알아보고, accessLog를 Customize 할 수 있는 방법을 알아보자. 기본적으로 Spring Cloud Gateway 가이드에 기본적인 설명이 나와있다. Add java property-Dreactor.netty.http.server.accessLogEnabled=true Add logback configuration access_log.log ..
2025.01.26 -
overviewGateway Handler Mapping SpringMVC의 동작 구성과 비슷하다. DispatcherServlet과 유사하게 Front Controller를 하나두어 진입점을 하나로 통합하였다. client 호출에서 Gateway Web Handler에 도달하기 전까지의 호출 순서를 보면 아래와 같다 Client ->HttpWebHandlerAdapter.handle -> (predicate, filter에서 사용하는 ServerWebExchange 생성 및 전달 )DispatcherHandler.handle -> (DispatcherServlet 유사)(handlerMapping을 찾아 handlerAdapter에서 수행)RoutePredicateHandlerMapping.getH..
[SpringCloudGateway] 구성 요소 및 동작 내용overviewGateway Handler Mapping SpringMVC의 동작 구성과 비슷하다. DispatcherServlet과 유사하게 Front Controller를 하나두어 진입점을 하나로 통합하였다. client 호출에서 Gateway Web Handler에 도달하기 전까지의 호출 순서를 보면 아래와 같다 Client ->HttpWebHandlerAdapter.handle -> (predicate, filter에서 사용하는 ServerWebExchange 생성 및 전달 )DispatcherHandler.handle -> (DispatcherServlet 유사)(handlerMapping을 찾아 handlerAdapter에서 수행)RoutePredicateHandlerMapping.getH..
2025.01.22