eubinecto / train-of-thoughts

learn by issue tracking
6 stars 0 forks source link

MSA (Microservice Architecture) 란 무엇인가? #30

Open eubinecto opened 2 years ago

eubinecto commented 2 years ago

Why?

대기업에서 오랫동안 일하시다가 스타트업 CTO로 직장을 옮긴 엔지니어분과 대화를 한 적이 있다.

"오, 이렇게만 한다면 어지간한 서비스는 금방 구축할 수 있겠다"

그 스타트업의 백엔드 설계를 보고 느낀점이라며 내게 해준말이다.

이때 이 스타트업에서 Microservices 라는 패러다임을 따라 서비스를 구축 중이라고 했다.

이게 뭐였더라. 생각을 하던 중...

예전에 읽었던 이 책이 생각이 났다
image

그런데 물론 모든 것을 생생히 기억하지는 않는다. 그래서 마저 공부를 좀 해보고 싶다. 이게 어떤 패러다임이고, 장점 및 단점이 무엇인지?

일단 지금 기억이 나는건?

그 정도인데.. 그때 읽어보기만하고 딱히 실전에 적용해본적은 없었던 것 같다.

하지만 한번 쯤은 제대로 써먹어보고 싶다는 생각이 들긴 했었다. 자연어처리 연구/ 모델링과는 별개로...

"어떤 서비스든 말만해. 2주일만 주면 네 서비스 MVP 그거, 내가 다 구축할 수 있어"

라고 자신있게 말할 수 있는 백엔드 엔지니어가 될 수 있지 않을까.

(대기업에서 일하는 것 대비, 스타트업에서 CTO가 된다면 그런 장점도 있다고 본다. 밑바닥부터 서비스를 빠르고 효율적으로 구축하는 방법을 배울 수 있다)

eubinecto commented 2 years ago

일단 여기까지 적어두고. 나주엥 저 책을 다시 한번 복습해보자.

eubinecto commented 2 years ago

중복이 생기는 경우,어떻게 해야할까? Wisdomify프로젝트를 이끌 때는 처음에는 storyteller / wisdomify로 운영하다가.. 로직에 중복이 생겨 하나로 합쳤었다 (프데이어 로드 & 업로드 로직의 중복)

micro service 패러다임에서는 이런 로직의 중복이 일어나는 경우 어떻게 해야하는가? 데이터 로드 & 업로드 로직을 따로 빼서 또다른 프로젝트를 만드는가?

eubinecto commented 2 years ago

우아한 형제들 개발자가 직접 이 토픽에 대해서 글을 쓴게 있다 - 나중에 읽어보자! - https://techblog.woowahan.com/2523/

eubinecto commented 2 years ago

여행기도 있다 ㅋㅋㅋ 글이 되게 재미있다 - https://velog.io/@syleemk/배민-마이크로-서비스-여행기-정리

이 글의 경우 결론이 되게 인상깊다
image

이제막 시작한 유저가 100명도 안되는 스타트업이라면. 굳이 MSA를 도입할 필요가 없다. 오히려 비용이 더 많이 들 것. 시작은 전통적인 방식으로 하되, 비즈니스가 차차 성장함에 따라 위 여정에서처럼 서버를 이전하고, 수정하고 관리하면 된다.