Spring Microservice(102)
-
Microservices architecture design
마이크로서비스는 탄력적이고, 고도로 확장 가능하며, 독립적으로 배포할 수 있고, 빠르게 발전할 수 있는 애플리케이션을 구축하는 데 인기 있는 아키텍처 스타일입니다. 하지만 성공적인 마이크로서비스 아키텍처를 구축하려면 애플리케이션을 설계하고 개발하는 방식이 달라야 합니다.마이크로서비스 아키텍처는 작은 독립적인 서비스들의 모음으로 구성됩니다. 각 서비스는 자체적으로 완결성을 가지며, 단일 비즈니스 기능을 경계(bounded context) 내에서 구현해야 합니다. 경계(bounded context)는 비즈니스 내에서 자연스러운 구획을 의미하며, 도메인 모델이 존재하는 명확한 경계를 제공합니다.마이크로서비스란 무엇인가?마이크로서비스는 작고 독립적이며 느슨하게 결합된 아키텍처 스타일입니다. 하나의 작은 개발팀이..
2025.02.26 -
Promethous/Grafana
username : adminpassword : admin Dashboard 설정
2024.12.22 -
Spring Cloud Gateway에서 CORS(Cross-Origin Resource Sharing) 지원
Spring Cloud Gateway에서 CORS(Cross-Origin Resource Sharing)를 지원하려면, Spring Framework의 CorsConfiguration과 관련된 설정을 활용하여 Gateway에 들어오는 요청의 CORS 정책을 명시적으로 구성해야 합니다. Spring Cloud Gateway는 Spring WebFlux 기반이므로, WebFlux의 CORS 처리 방식을 사용합니다.아래는 CORS를 Spring Cloud Gateway에서 지원하는 방법을 단계별로 설명한 내용입니다.1. Spring Cloud Gateway에서 CORS 지원 방식Spring Cloud Gateway에서 CORS 정책을 설정하는 주요 방식은 두 가지입니다:Global CORS 설정:모든 라우트에..
2024.12.15 -
Reverse Proxy
리버스 프록시(Reverse Proxy)란?리버스 프록시는 클라이언트와 서버 사이에 위치하여 클라이언트의 요청을 대신 처리하고, 요청에 따라 적절한 서버로 전달하는 중간 서버를 말합니다. 클라이언트는 리버스 프록시가 실제 서버라고 생각하지만, 실제로는 리버스 프록시가 요청을 백엔드 서버로 전달한 뒤, 응답을 받아 클라이언트에 전달합니다.리버스 프록시의 주요 역할로드 밸런싱 (Load Balancing) 여러 서버로 클라이언트 요청을 분산시켜 서버의 부하를 줄이고, 고가용성을 제공합니다.트래픽이 많은 웹사이트에서 특히 유용합니다.보안 강화 클라이언트가 백엔드 서버의 IP 주소와 세부 정보를 알 수 없도록 숨깁니다.SSL/TLS 암호화 작업을 리버스 프록시에서 처리하여 서버의 부담을 줄입니다.캐싱 (Ca..
2024.12.15 -
spring cloud gateway의 route predicate factories
Spring Cloud Gateway의 Route Predicate Factories는 API Gateway의 핵심 기능 중 하나로, 요청이 특정 조건에 부합할 경우 라우트를 활성화하는 역할을 합니다. 이를 통해 클라이언트 요청을 세부적으로 제어하고, 라우팅 로직을 간결하게 구성할 수 있습니다.1. Route Predicate Factory란 무엇인가?Spring Cloud Gateway에서 Predicate는 요청이 특정 조건을 만족하는지 검사하는 역할을 합니다. boolean 값을 반환하며, 조건이 true일 경우 라우트가 활성화됩니다. 이러한 Predicate는 Spring Cloud Gateway에서 Route Predicate Factory라는 형태로 미리 정의되어 제공됩니다.Predicate의..
2024.12.15 -
@CircuitBreaker의 name 속성
@CircuitBreaker의 name 속성은 회로 차단기의 구성을 식별하고 관리하기 위한 중요한 속성입니다. Spring Boot와 Resilience4j 같은 라이브러리에서, 여러 회로 차단기를 사용하는 애플리케이션에서 각각의 회로 차단기를 구분하고 개별적으로 설정할 수 있도록 돕는 역할을 합니다.1. name 속성의 역할a) 회로 차단기 식별name 속성은 회로 차단기 이름을 지정합니다.이 이름은 애플리케이션 내에서 해당 회로 차단기를 식별하는 고유한 키로 사용됩니다.하나의 애플리케이션이 여러 서비스 호출을 관리하는 경우, 각 호출에 대해 고유한 회로 차단기를 구성할 수 있습니다.b) 개별 설정 적용name을 기준으로 각 회로 차단기의 동작 방식을 개별적으로 설정할 수 있습니다.Resilience4..
2024.12.12