요즘 기술 블로그 보면 다들 마이크로서비스 얘기를 하니까 저도 새 프로젝트를 처음부터 마이크로서비스로 쪼개서 시작해야 하나 고민이 됩니다. 근데 막상 하려니까 이게 맞나 싶어서요.
제가 이해하기론 이런 차이인 거 같은데요.
모놀리식 = 하나의 앱에 전부 다, 배포도 한 번에
마이크로서비스 = 기능별로 서비스 쪼개고, 각각 따로 배포
마이크로서비스가 뭔가 더 세련되고 확장성도 좋아 보여서 끌리긴 하는데, 주변에서는 처음엔 그냥 모놀리식으로 시작하라는 말도 많이 하더라고요. 왜 좋은 걸 두고 굳이 모놀리식부터 하라는 건지 잘 이해가 안 돼요.
서비스를 쪼개면 서버 간 통신이나 데이터 정합성 같은 게 복잡해진다는 얘기는 얼핏 들었는데 구체적으로 뭐가 그렇게 힘들어지는 건지 감이 안 와요. 소규모 스타트업이나 저 같은 개인 개발자 입장에서는 어떤 기준으로 선택하는 게 맞을까요? 나중에 모놀리식으로 시작했다가 마이크로서비스로 넘어가는 것도 현실적으로 가능한 일인지 실무 경험 있으신 분들 조언 부탁드립니다.