모 놀리 식 애플리케이션을 마이크로 서비스로 분할하는 사람들을 위해 데이터베이스를 분리하는 수수께끼를 어떻게 처리하고 있습니까? 내가 작업 한 일반적인 애플리케이션은 성능과 단순성을 위해 많은 데이터베이스 통합을 수행합니다.
논리적으로 구별되는 두 개의 테이블 (원하는 경우 제한된 컨텍스트)이 있지만 해당 데이터의 대량에 대해 집계 처리를 자주 수행하는 경우 모놀리스에서 개체 방향을 피하고 대신 데이터베이스의 표준을 사용합니다. 집계 된 뷰를 앱 계층으로 다시 반환하기 전에 데이터베이스의 데이터를 처리하는 JOIN 기능입니다.
이러한 데이터를 데이터베이스가 아닌 API를 통해 데이터를 '조인'해야하는 마이크로 서비스로 분할하는 것을 어떻게 정당화 할 수 있습니까?
저는 Sam Newman의 Microservices 책을 읽었으며 Monolith 분할에 대한 장에서 "Breaking Foreign Key Relationships"의 예를 제공합니다. 여기서 그는 API에서 조인을 수행하는 것이 더 느릴 것임을 인정합니다. 어쨌든 응용 프로그램이 충분히 빠릅니다. 이전보다 느리다는 것이 중요합니까?
이것은 약간 멍청한 것 같습니까? 사람들의 경험은 무엇입니까? API 조인이 제대로 작동하도록하기 위해 어떤 기술을 사용 했습니까?