0

마이크로 서비스 아키텍처를 기반으로하는 웹 애플리케이션의 백 엔드를 구축 중입니다. 각 마이크로 서비스는 특정 모듈에만 관련된 작업을 관리하며 자체 로컬 데이터베이스를 갖습니다. 하나의 모듈에 대해 하나 이상의 마이크로 서비스가있을 수 있습니다. 예 :마이크로 서비스 용 데이터베이스 설계

고객 모듈에는 자체 마이크로 서비스가 있고 마이크로 서비스 고객 데이터를 유지하기위한 로컬 데이터베이스를 갖게됩니다. 주문 모듈은 주문 기록을 유지하기 위해 자체 로컬 데이터베이스를 보유하고 있습니다.

나는 이벤트 기반 아키텍처를 사용하여 데이터 지속성 관리를 생각하고 있지만이 구현에 유용 할 수있는 데이터베이스가 있는지 알고 싶어 (아마도 카산드라?)

내가 어떤 제안에 열려입니다 :)

+1

응용 프로그램을 적절하게 추상화하면 어떤 데이터베이스를 사용할 것인지 결정할 때 개발의 후반 단계를 수행 할 수 있습니다. – Fabio

답변

0

응용 프로그램 자체에 따라 다릅니다. 응용 프로그램 인식 데이터베이스를 사용하려면 cassandra와 같은 NoSQL 데이터베이스를 사용할 수 있습니다. ER 기반으로 데이터를 모델링하고 저장하려는 경우 관계형 데이터베이스 (예 : Oracle)를 사용할 수 있습니다. 그러나 Cassandra는 클러스터 된 데이터베이스로 배포해야하므로 로컬 데이터베이스로 사용하기에 적합하지 않습니다.

더 적절한 데이터베이스를 컨텍스트에 조언하려면 예를 들어 동시 사용자 수, 사용자 당 요청 수, 보유하고있는 데이터의 양과 같은 "문제"에 대한 추가 정보를 제공해야합니다.