Diciamo che ho creato una webapp che voglio renderla più scalabile.
Come funzionerebbe ora
Se voglio "vendere" la webapp devo fare quanto segue:
- Noleggia un nuovo hosting
- Copia il codice nell'host
- Crea un DB e le tabelle e cambia i nomi nel db
La tabella utenti verrà utilizzata per verificare l'utente che desidera accedere e le altre tabelle di dati memorizzano i dati e lavorano insieme (join e così via)
Questo non è davvero scalabile ... devi fare un sacco di cose manuali da configurare
Come voglio che funzioni
Una piattaforma (quindi automatizza la maggior parte delle impostazioni). Ciò renderà più semplice la manutenzione del codice (base di codice centrata) e non ci saranno problemi con la creazione di tabelle / db.
Qui mi manca la panoramica / conoscenza ...
- Genero nuove tabelle per ogni cliente che gli utenti di questo cliente userà?
- Oppure faccio a generare nuovi DB ogni volta con le stesse tabelle dei nomi? Ma se alcuni utenti accedono quindi devo passare a un altro DB. (come vorrei controllare che)
- Oppure posso scaricare tutto in 1 db e le stesse tabelle e creare un extra colonna per indicare a quale azienda appartengono? Il problema con questo può avere problemi di prestazioni nel tempo. Conta circa 7800 file per ogni cliente, ogni anno .....
Tbh Non mi aspetto di trarne vantaggio, ma ero sempre molto interessato a creare piattaforme scalabili invece di copiare / incollare il codice su altri host. (cosa generalmente faccio)
La domanda è come fare questo? Non è una discussione qual è il modo migliore ma più semplicemente come puoi fare questo o come la maggior parte delle aziende fa questo