하나의 Application을 다수의 독립적인 Service로 구성하는 Architecture Style 이다.각자 별도의 프로세스에서 실행되며 HTTP API와 같은 가벼운 매커니즘으로 통신하는 작은 애플리케이션이다.작은 서비스들은 각자의 비즈니스 기능을 담당하고,
🏷 MSA 도입 조건 MSA의 도입 조건은 사업/조직적 측면과 기술적 측면 두 가지로 나누어 볼 수 있다. 조건 1. 사업 조직적 측면 MSA가 중장기적 Business benefit을 올릴 수 있다는 합의 ➡️ 말 그대로 MSA의 도입이 중장기적 Busines
🏷 MSA 서비스 분리 원칙(1) > ⭐️3가지 키포인트⭐️ 많은 내용이 있지만 이 3가지만 기억하면 된다. 단계적으로 마이그레이션 해야 한다. 처음에 크게 분리하고 추후에 작게 분리 하라. 서비스 분리 공식은 없다. 1. 작고 분리가 쉬운 서비스로 워밍업 MS
🏷 도메인이란? 도메인은 소프트웨어를 개발하는 대상의 영역으로 쉽게 말하면 우리가 풀어야 하는 문제의 영역이다. > 도메인 모델 도메인 영역을 해결하기 위한 solution space 모든 사람이 도메인을 동일한 관점에서 이해할 수 있고 공유할 수 있도록 단순화시
🏷 서비스 분리 프로세스 서비스를 분리하는 과정은 복잡도가 상당히 크다. 프로세스는 이정표를 제시하여 복잡도를 완화시켜 준다. 이는 완벽하게 정형화 된 SW 프로세스는 아니고 단지 절차를 기술한 것이다. 🏷 후보 서비스 도출 > 1. 워크샵을 통해 분리 대상
🏷 Spring Boot ✔️ Spring Framework & Spring Boot Spring Framework는 EJB의 복잡성에 대한 대안으로 개발되어, 현재까지도 범용적으로 사용되고있는 프레임워크이다. DI와 XML 기반 설정으로 POJO(Plain O
🏷 Container Orchestration 소수의 컨테이너 관리는 어렵지 않아서 수동으로 가능하지만, 개수가 많아지고 다수의 멀티 호스트로 구성된 대용량 분산 환경에서는 수동 작업이 불가능해진다. 이런 환경에서 다수의 컨테이너를 쉽고 자동적으로 제어/관리하기