소프트웨어 아키텍처의 세계에서 모놀리틱 아키텍처와 마이크로서비스 아키텍처(MSA)는 자주 비교되며, 이 두 가지 아키텍처는 각각의 특성과 장단점이 있습니다.
특히 데이터베이스 사용 방식에서 큰 차이를 보이는데, 이전에 수행한 프로젝트에서 모놀리틱 아키텍쳐의 구조를 사용함과 동시에 두 개의 데이터베이스(Redis, MySQL)를 사용했기 때문에, 이번 글에서는 지난 글에서 언급한 특장점 외에 모놀리틱 아키텍처에서의 데이터베이스 사용에 대해 상세히 살펴보겠습니다.
모놀리틱 아키텍처에서는 일반적으로 하나의 데이터베이스를 사용합니다. 하지만 이는 절대적인 규칙이 아니며, 필요에 따라 다양한 데이터 저장소를 함께 사용할 수 있습니다. 예를 들어, MySQL과 같은 관계형 데이터베이스와 Redis와 같은 캐시 시스템을 동시에 사용하는 경우가 이에 속합니다.
소프트웨어 아키텍처를 선택할 때는 적절한 데이터베이스를 선택하고 이를 아키텍처에 반영하는 것이 중요합니다. 각 아키텍처의 특성과 장단점을 고려하여 프로젝트에 가장 적합한 아키텍처와 데이터베이스를 선택해야 합니다. 저의 프로젝트에서도 Redis와 MySQL을 함께 사용하였지만, 이는 여전히 모놀리틱 아키텍처의 범주에 속했습니다. 결국 중요한 것은 애플리케이션의 전체적인 구조와 데이터베이스 사용 방식이 어떻게 설계되고 관리되는지에 있습니다.
TIL 너무 잘 작성해주셨군요! 앞으로도 꾸준히 작성해보아요~!