본문 바로가기
728x90
반응형
SMALL

IT278

Spring Cloud 시리즈 3 - Circuit Breaker (Hystrix) Circuit Breaker Pattern Software system 이 네트워크상 서로 다른 소프트웨어를 원격으로 호출하는 것은 매우 일반적이다. 특히 Cloud 환경에서 MSA 로 서비스를 구현하는 경우라면 더욱 그렇다. 메모리 내 호출과 원격 호출의 가장 큰 차이점 중 하나는 원격 호출이 실패하거나 일부 제한 시간에 도달할 때까지 응답 없이 중단될 수 있다는 것이다. 요청이 많은데 응답하지 않는 서비스가 발생할 경우 중요한 리소스가 부족하게 되어 여러 서비스에 오류가 전파되어 전체 시스템에 문제가 발생하는 상황이 발생할 수 있다. case 1 User Service 가 약간 지연될 때 요청이 별로 없다면 하나의 Thread 만 blocking 되어 문제가 크지 않을 수 있지만 요청이 많아질 경우 .. 2023. 5. 22.
Error creating bean with name 'configurationPropertiesBeans' defined in org.springframework.cloud.autoconfigure.... Spring cloud 를 적용해서 boot 를 start 할 때 start failed 되는 경우가 있다. 이럴 땐 Spring boot 버전과 cloud 버전이 호환되지 않는 경우이다. 아래에서 spring boot version 과 호환되는 cloud version 을 확인할 수 있다. https://spring.io/projects/spring-cloud Spring Cloud Spring Cloud provides tools for developers to quickly build some of the common patterns in distributed systems (e.g. configuration management, service discovery, circuit breakers, i.. 2023. 5. 22.
Spring Cloud 시리즈 1 - 개요 들어가기 전 모놀리틱 아키텍처로 처음에 시작 - 서비스가 커지면서 조직이 나뉜다. (상품팀, 고객관리팀, 접수팀, 주문팀....) - 공통코드를 .jar 로 만들고 각자 repository 로 관리하고 개발하고 merge 한다. - conflict 발생, 배포는 누가? 각 팀의 일정이 다른데? QA 는 어떻게? - 모놀리틱 아키텍처는 단순하고 배포가 쉽고 scale-out 이 단순하다. 하지만 무겁고 start 가 느리고 기술 stack 을 바꾸기 어렵고 결합도가 높으며 코드 책임 한계와 소유권이 불투명 하다. - 이쯤에서 회사는 결정을 하게 된다. 새로운 언어, 깔끔한 코드로 전면 재개편 하거나 (차세대 프로젝트), MSA 플랫폼을 구축하며 기존 Legacy를 교살 한다. MSA 아키텍처 - 각 서비스.. 2023. 5. 17.
Spring Cloud 시리즈 2 - Spring Cloud Config Spring Cloud Config - 분산 시스템에서 외부화된 설정 정보를 서버 및 클라이언트에 제공하는 시스템 - Spring Cloud Config Server (설정 서버) . Version 관리 Repository로 백업된 중앙 집중식 구성 노출 지원 . 특징 1) HTTP, resource-based API for external configuration 2) Encrypt and decrypt 3) Embeddable easily in a Spring Boot application using @EnableConfigServer - Spring Cloud Config Client (설정 클라이언트) . 애플리케이션이 설정 서버에 연결하도록 지원 . 특징 1) Bind to the Config .. 2023. 5. 16.
728x90
반응형
LIST