이번 포스팅은 Spring Cloud Stream에 대해 공부한 지식을 정리하는 글입니다. Spring Cloud Stream이란❓Spring Cloud Stream은 마이크로서비스 아키텍처에(MSA)서 메시징 시스템을 쉽게 다루기 위한 Spring의 프로젝트입니다. 이 프로젝트는 이벤트 기반 아키텍처를 구축할 때 Kafka, RabbitMQ 등의 메시지 브로커와의 통합을 단순화하고, 메시지 기반의 애플리케이션을 구축할 때 유용한 도구와 기능을 제공합니다. Spring Cloud Stream의 주요 개념과 기능은 다음과 같습니다. 1. 추상화된 메시징 클라이언트Spring Cloud Stream은 다양한 메시징 브로커(예: RabbitMQ, Kafka)에 대한 추상화 계층을 제공하여, 특정 브로커에 종속..
분산 추적(Zipkin)은 마이크로서비스 간의 요청 흐름을 추적하고 시각화하여 성능 문제와 오류를 분석하는 기법입니다. 분산 추적과 Zipkin에 대한 내용은 아래의 포스팅에서 확인 가능합니다.▼ [Spring Cloud] Spring Cloud Sleuth(분산 추적)와 Zipkin이란 ❓현대의 마이크로서비스 아키텍처(MSA)에서는 여러 서비스가 서로 연계되어 복잡한 시스템을 형성합니다. 이러한 시스템에서 문제를 추적하고 성능을 모니터링하는 것은 필수적입니다. 이 과정pixx.tistory.com 사용 코드product-servicebuild.gradleapplication.ymlorder-servicebuild.gradleapplication.ymlOrderControllerOrderService..
현대의 마이크로서비스 아키텍처(MSA)에서는 여러 서비스가 서로 연계되어 복잡한 시스템을 형성합니다. 이러한 시스템에서 문제를 추적하고 성능을 모니터링하는 것은 필수적입니다. 이 과정에서 Spring Cloud Sleuth와 Zipkin은 강력한 도구가 됩니다. 분산 추적이란❓분산 추적(Distributed Tracing)은 마이크로서비스 아키텍처(MSA)에서 서비스 간의 호출 흐름을 추적하고 시각화하는 기법입니다. 이는 요청이 시스템을 통과하면서 어떤 서비스에서 얼마나 시간이 걸렸는지, 오류가 발생한 위치는 어디인지 등을 파악하는 데 유용합니다.분산 추적의 주요 개념1. Trace Trace는 하나의 요청이 여러 서비스에 걸쳐 진행되는 전체 과정을 나타냅니다. 각 Trace는 특정 요청이 시스템을 통..
마이크로서비스 아키텍처(MSA)에서 애플리케이션은 여러 개의 독립적인 서비스로 분리된다는 것을 알고 있습니다. 각 서비스는 독립적인 배포, 확장, 유지보수가 가능하다는 장점이 있지만 이로 인해 설정 관리의 복잡성이 증가한다는 단점이 있습니다. 각 서비스는 자체적인 설정 파일 application.yml을 사용하여 다양한 의존성 설정과 구성 정보를 관리합니다. 이러한 설정 파일에는 데이터베이스 연결 정보, 서버 포트 번호, 외부 API 키 등 중요한 설정 정보가 포함됩니다. 서비스가 많아질수록 각 서비스의 설정을 관리하는 것은 점점 더 복잡해집니다. 또한 서비스에 필요한 설정 정보나 데이터가 변경될 필요가 있을 때, 이 설정 파일을 수정하려면 해당 서비스를 다시 배포하거나 서버를 재시작해야 합니다. 이..