Stiamo migrando un'applicazione monolitica nell'architettura dei microservizi. A causa di alcuni requisiti normativi, dobbiamo conservare i dati dei clienti di diversi paesi in database separati (specifici per paese). Cioè db US per clienti statunitensi, db UK per clienti britannici ...
I seguenti progetti che stiamo prendendo in considerazione sono i seguenti:
Opzione 1: un'applicazione multi-tenant con supporto multi-tenant ibernato che può essere ridimensionato su N numero di volte in base alla domanda (si pensi ai pod di kubernetes). Una singola istanza di questa applicazione sarà in grado di connettersi a tutti i database.
Opzione 2: distribuire 1 istanza di microservizio per database di paesi. Con un gateway API di fronte a loro instradare il traffico
Se dovessi progettare questo tipo di sistema, quali sarebbero le tue scelte?