728x90 MSA4 아키텍처 및 시스템 설계 by CTO 개발을 할때 가장 처음 하는 일이 있다.- 기획 리뷰- 요구사항 분석- 그리고 시스템 아키텍처 설계 이다!!! 기획 리뷰, 요구사항 분석은 CTO가 아니더라도 대부분의 애자일한 조직에서 개발자가 수행해야할 일 들중 하나이다. 하지만, 시스템 아키는 다르다. 왜?아키를 처음 제대로 설계하지 않게 되면, 모든 개발자가 영향을 받게되고, 이 영향이 개발비용 증가로 이어질 수 있다.여기서 말하는 비용은 시간적 비용과 비용적 지출 모두를 뜻하는 말이다. "토이 호어"라는 사람이 한말 중 유명한 말이 있다.https://ko.wikipedia.org/wiki/%ED%86%A0%EB%8B%88_%ED%98%B8%EC%96%B4 토니 호어 - 위키백과, 우리 모두의 백과사전위키백과, 우리 모두의 백과사전.ko.wiki.. 2024. 11. 1. MSA로 왜 넘어가는가?? feat. MSA 장점 필자가 MSA 로 넘어간 시점도 언 6년이 다되어간다. 당시 레거시 소스전체를 다운로드 받는데에만 몇시간이 걸렸고 빌드에만 1시간 이상이 걸렸던...오류 하나 발견되어 (오류를 심지어 쉽게 찾았음에도 불구하고) 재배로 나가는 시간만 1시간 이상이...걸렸던 거대 시스템의 한 개발자로써 상당히 불편함을 느끼고 있던 도중 MSA구조는 이러한 상황을해결하는데 돌파구가 되었다. 저정도 까지의 시스템이 아니더라도 MSA구조(유사 MSA라도)로 넘어오는 회사들이 많다.물론 넘어오면서 시스템 복잡성이 증가되는 것도 사실이다. 이 글에서는 MSA 장점과 단점에 대해서 다룰려고 한다.(MSA가 perfect한 아키는 아니다) [장점]1. 빌드 시간을 획기적으로 단축 시켜준다. 가장 큰 장점 중 하나일 것이다. .. 2024. 8. 21. MSA transaction 처리 saga 패턴 MSA 주요 패턴 중 saga 패턴에 대해 기재해 보려한다. 참조할 수 있는 대표 사이트로 는 https://microservices.io/patterns/data/saga.html 가 있는데, 주요 내용은 아래와 같다. 모놀리식 아키텍처에서 주요 사용했던 방식이 위의 다른 service layer 사이에서 발생되는 transaction 처리 부분을 동일 DB 사용하여 논리적 일관성을 유지하였는데, MSA 방식에서 service domain 영역뿐만아니라 DB 영역까지 분리되면서 타 service 간 Transaction 처리가 필요하게 되었다. 이를 RDBMS 와 Nosql 모든 영역에서 일관성있게 유지는 힘들어 졌기때문에 Data 저장결과적으로 동일한 효과를 볼수 있도록 하는 개발패턴이 필요한 상황인.. 2022. 10. 23. Nest js , MSA 기본 구조 설계 Nest를 써본지도 언 2년이 넘은듯 한다..net core 포함 .net, Java spring 으로 작업을 하다가 Python(Django), node(express)도여러차례 써볼일이 생겼지만, 스타트업으로 넘어오면서 Backend 쪽은 node 위에 nest js를 사용하게 될 일이 많아졌다. 오늘부터 한동안은 최근 핫한 MSA 구조에 대해 이야기 해보고 Nest 기반으로 어떻게 MSA 를 구축할 것인가를 써보겠다.아래 사이트는 (Source: https://scalablescripts.com) 에서 구조를 가져온 부분인데 기본을 설명하기 가장 적절해 보여 캡쳐하였다. 위의 그림대로 Client는 react 든, angular든, vue든 상관이 없다. API url이 정해지면 서비스에 맞도록 .. 2022. 10. 3. 이전 1 다음 728x90