현재 다니고 있는 회사에서 제공하는 서비스는 전형적인 모놀리틱 시스템이다.
같은 회사 동료와 MSA 로 새롭게 서비스를 구축하자라는 공통된 의견을 가졌다.
그 이유는 기존 서비스 구조는 어딘가를 수정하려면 그와 함께 봐야하는 코드가 많고 비즈니스 로직이 너무 촘촘하게 결합 돼 있었기 때문이다. 여기 한군데 건들면 모든 코드가 영향을 받는다.
우선적으로 DB 구조도 뭔가 분석하거나 쌓인 데이터를 통해 인사이트를 얻을 수 있는 그런 좋은 구조가 아니였고 불필요한 컬럼 및 테이블이 쌓여있었다.
현재는 다른 개발자 분들께 현재 서비스에서 나중에는 이런 식으로 서비스를 나누고 DB 는 이렇게 나눴으면 좋을 것 같다. 라는 것까지 이야기가 됐다.
그러나 현실적으로 보았을 때 3년도 채 되지 않은 스타트업에서 기존 서비스를 MSA 로 전환할 수 있을까라는 생각이 들었다.
1. 현재 시스템의 문제점
2. MSA 전환 시 얻을 수 있는 이점
3. DB 구조를 엎어야 하는 이유
4. 현 시스템의 AWS 비용과 MSA 전환 시 비용
5. MSA 전환 시 어떻게 운영할 것인가?
6. 전환 시 모니터링 시스템은?
7. 특정 서비스가 죽었을 때는?
8. 세션 및 보안은?
위 8가지를 개발자 분들과 경영진에서 OK 해야 비로소 계획을 할 수 있고 진행할 수 있을 듯 하다.
(현재 CTO 가 없음)
내가 경영진이라면 잘 돌아가고 있는데 왜 변경 해? 라는 질문을 했을 것 같다. 이에 대한 질문에 대한 답을 생각해 놓아야 한다.
실제로 만약 전환한다면 정말 세밀하게 계획해야 할 듯하다. 어떻게 마이그레이션 할 건지 등 등
우선 진행 사항은 여기까지이며 다른 분들도 필요성만 느끼는 중이다. 뭔가 업데이트 된다면 다음 글을 쓸 수 있을 듯 하다.