Attualmente sto lavorando a un progetto composto da due diverse applicazioni web. Una delle applicazioni è un server Web PHP con un front-end di un sito Web e un database MySQL. È costituito da framework Laravel e utilizza Eloquent ORM per effettuare transazioni sul database.
L'altra applicazione Web è un server back-end Java che viene utilizzato per gestire le richieste tra il sito Web e altri servizi Web. Questa applicazione ha anche il suo database MySQL e usa Hibernate per le transazioni del database.
Questi due servizi hanno dati che devono essere sincronizzati tra loro e sto cercando di decidere l'approccio migliore. Attualmente sto valutando due opzioni.
- Utilizzare un servizio Web per inviare dati tra le applicazioni e aggiornare i database tramite le applicazioni. Il server back-end ha già un servizio RESTlet ed è ciò che viene utilizzato per ricevere comandi dal sito Web.
- Aggiungi uno schema al back-end che corrisponde alle tabelle nel database del sito web e condividi le stesse tabelle tra i due servizi. Questa opzione mi era venuta in mente ed è stata suggerita dai miei colleghi che stanno anche lavorando a questo progetto, ma il mio giudizio migliore mi dice che questa sarebbe una cattiva idea. Ritengo che ciò provocherebbe problemi imprevisti e aumenterebbe le complicazioni.
Grazie in anticipo per i tuoi suggerimenti. Se ci sono altre soluzioni o approcci che non ho considerato, per favore fatemelo sapere. Sono relativamente nuovo a lavorare su progetti di questa portata.