본문 바로가기

마이크로서비스패턴3

적절한 마이크로서비스를 도입하는 시기는 언제일까? 지난 해 9월 트레바리 테크유닛으로 이직을 결정하게 된 주요 이유 중 하나는 마이크로서비스를 직접 구축 할 수 있는 기회에 있었습니다.. 이 후 약 8개월이 지난 이 시점에 '적절한 마이크로서비스를 도입하는 시기는 언제 일까?' 을 고민하는 것은 뒷북일 수 있지만, 이제는 이 부분에 대해서 어느정도 답을 할 수 있는 시점이 아닐까? 싶어 고민하게 되었습니다. 1. 다우기술에 근무할 적 약 90만 라인이 자바 코드가 모듈형 모놀리스 아키텍쳐로서 운영되는 프로젝트를 약 2년 넘게 관리했었습니다. 이 방대한 코드 속에서 마이크로서비스가 말하는 모놀리스 아키텍쳐의 단점을 운이 좋게도 모두다 겪어볼 수 있었습니다. 약 2주에 한 번씩 배포 빈도를 가집니다. 코드가 심각하게 방대해, 도메인에 집중할 수 없어 스파게.. 2022. 7. 9.
이벤트 스토어(?) 이벤트 소싱(?) 를 활용한 View 를 반복적으로 만들고 부수면서 느낀 점 결론부터 말씀드리면 '이벤트스토어를 활용해 내가 원하는 View 를 만들어 내기란 여전히 턱없이 내공이 부족하다.' 입니다. 먼저 이벤트스토어에 대한 이야기부터 해보려 합니다. 그 다음 반복적으로 만들고 부수면서 느낀 점 이야기 해볼까 합니다. 이벤트 스토어란 무엇일까? 이벤트 스토어가 없던 시절의 우리는 데이터베이스에 어떤 행위의 결과값만 포함시켜왔습니다. Actor에 의해 만들어진 어떤 결과물을 의미합니다. 그렇다면 이벤트란 무엇일까요? 사내에서 이벤트라는 용어를 비개발자분들에게 설명하기 위해 사용된 장표를 가져왔습니다. 이벤트는 특정시점에 발생한 어떤 사건을 의미합니다. 그러므로, 이벤트 스토어는 특정시점에 발생한 사건을 저장하는 것을 의미합니다. 이것이 가져다는 주는 이점은 무엇일까요? 1. 바로.. 2022. 7. 3.
Eventuate.io 간단 파헤치기 https://eventuate.io/ 요즘 일주일에 2시간이상의 시간을 들여, 학습 중인 프레임워크입니다. 해당 프로젝트의 저자는 마이크로 서비스 패턴 라는 이름의 책으로 출판되었습니다. 이 책을 발견하기 전에, 마이크로서비스에서 메세지 알고리즘을 좀 더 쉽게 쓸 수 없을까? 라는 물음표를 시작으로 Eventuate 프레임워크를 알게 되었고, 점차 MSA의 문제점을 해결하는 Eventuate에 매료되었습니다. 그럼, Eventuate는 어떤 프레임워크일까요? 모놀리식에서 MSA로 변경시 가장 문제가 되는 부분은 분산 데이터 관리 문제라고 합니다. 여기서 말하는 분산 데이터 관리 문제란? 각 마이크로 서비스에는 자체 개인 데이터베이스가 있습니다. 여러 서비스에서 데이터를 검색하는 쿼리뿐만 아니라 여러 서.. 2020. 10. 29.