Supponiamo che tu abbia la seguente applicazione: utenti possono far parte di diverse organizzazioni . Utenti diversi possono creare attività e progetti all'interno di un'organizzazione. In un'architettura di microservizi, ci sono tre servizi separati che gestiscono rispettivamente le attività, i progetti e le organizzazioni.
Ora, supponiamo di voler inviare una email giornaliera a tutti gli utenti che contengono tutte le attività nuove e completate e tutti i progetti nuovi e completati all'interno di un'organizzazione, una sorta di feed giornaliero.
Qual è l'approccio migliore per sviluppare questa funzionalità? Ritengo che l'utilizzo dell'API pubblica non si riduca bene, soprattutto perché le e-mail vengono generate tutte in una volta, e potrebbero potenzialmente essere un sacco di richieste, in linea con il numero di utenti e organizzazioni. Un altro approccio consiste nell'assegnare il servizio "email giornaliera" all'attività e agli eventi del progetto, archiviarli nel db e quindi svuotare il db quando viene inviata l'email (questo può essere facilmente ridisegnato lungo la linea). C'è uno svantaggio in questo? Ci sono altri modelli comuni?