Recentemente ho iniziato a conoscere l'architettura dei microservizi. Il gateway API è un pattern solitamente proposto per l'aggregazione di dati da diversi microservizi proprietari dei loro archivi di dati. Tuttavia non sono stato in grado di trovare nulla riguardo alla possibilità di farlo in un modo configurabile.
Scenario: I clienti dovrebbero essere in grado di definire report che utilizzano dati aggregati da diversi microservizi. Questo dovrebbe essere configurabile non cambiando il codice sorgente sottostante.
Possibile soluzione in architettura monolitica:
- In base alle esigenze del cliente, viene preparata una query SQL personalizzata nel file JSON che alimenta i dati a Reporting Framework.
Possibile soluzione nell'architettura dei microservizi a cui posso pensare:
- Avere un altro microservizio di reporting utilizzando gli eventi per la sincronizzazione su un data warehouse in cui conserviamo le informazioni da altri microservizi. Quindi possiamo usare la soluzione simmilar come nell'app monolitica.
C'è qualche altro modo per raggiungere questo obiettivo? Se non ci sono schemi, strutture, cose da considerare che possono essere utili in questo scenario?
Saluti