Vorrei creare un sistema che gestisca i messaggi di avviso di vari programmi e che possa elaborare tali avvisi per i clienti deboli via e-mail. Tutto ciò sarebbe contenuto su un'unica rete interna.
Penso che voglio che l'architettura di base assomigli a qualcosa del genere:
La preoccupazione principale che ho attualmente è il bit "Gestore messaggi", che sarà quello che sarà il mio "tipo di API". Voglio che tutti i componenti di questo sistema inviino dati all'API, che gestisce tutte le scritture nel database. Penso che questo approccio sia più semplice perché semplifica la sicurezza e mi consente di contenere molte delle query DB più complicate in un singolo programma.
La preoccupazione è che io voglia che questo sia agnostico sul linguaggio - nel senso che qualsiasi codice dovrebbe essere in grado di inviare messaggi al mio gestore - che li interpreterà. Spero di farlo tramite file flat JSON o tramite chiamate REST al programma (dando flessibilità alle applicazioni down-stream).
La mia domanda è-
Dovrei preoccuparmi del gestore dei messaggi - o aggiungerebbe semplicità per consentire l'accesso diretto al database alle applicazioni down-stream, nonché agli altri due componenti (Management Console e Gestione avvisi)?
In questo modo, possono inserire qualsiasi avviso desiderino, purché INSERT nella tabella o nelle tabelle DB sia valido.
Non sono un progettista di software commerciale quindi mi scusi - Voglio solo un progetto da realizzare nel mio tempo libero.