서비스가 커질수록 큰 프로그램 하나로 모든 기능을 담으면(모놀리식) 한 부분의 문제가 전체를 멈추게 할 위험이 커집니다. 마이크로서비스는 이런 큰 프로그램을 결제, 로그인, 검색처럼 작은 기능 단위(서비스)로 쪼개서 각각 따로 만들고 따로 배포하는 구조입니다. 한 서비스가 죽어도 다른 서비스는 계속 움직일 수 있다는 장점이 있지만, 그만큼 서비스 사이의 통신을 관리하는 복잡함은 늘어난다는 트레이드오프가 있습니다.
🧩🔌
쪼갠 만큼 이어붙이는 부담도 생깁니다
서비스를 잘게 쪼갤수록 각 서비스는 단순해지지만, 그 서비스들을 서로 연결하고 조율하는 일은 새로운 과제가 됩니다. 그래서 마이크로서비스는 무조건 좋은 구조가 아니라, 팀 규모와 서비스 복잡도에 맞춰 선택하는 트레이드오프입니다.
한 줄로:
마이크로서비스는 큰 프로그램을 작은 기능 단위로 쪼개 따로 만들고 배포하는 구조입니다.