Sto cercando di eseguire una grande quantità di siti che condividono circa il 90% del loro codice. Sono semplicemente progettati per interrogare un'API e restituire i risultati. Avranno una base utente / database comune ma saranno configurati in modo leggermente diverso e avranno CSS diversi (forse anche diversi modelli).
La mia idea iniziale era di eseguirli come applicazioni separate con una libreria comune, ma ho letto del framework dei siti che consentirebbe loro di eseguire da una singola istanza di Django che potrebbe aiutare a ridurre l'utilizzo della memoria.
Il framework del sito è l'approccio giusto per un problema come questo e ha reali vantaggi rispetto all'utilizzo di applicazioni separate?
Inizialmente pensavo lo fosse, ma ora penso diversamente. Ho sentito quanto segue:
Your SITE_ID is set in settings.py, so in order to have multiple sites, you need multiple settings.py configurations, which means multiple distinct processes/instances. You can of course share the code base between them, but each site will need a dedicated worker / WSGIDaemon to serve the site.
Ciò elimina in modo efficace qualsiasi vantaggio derivante dall'esecuzione di più siti sotto un unico controllo, se ogni sito ha bisogno di un'istanza UWSGI in esecuzione.
Idee alternative dei sistemi:
Non so quale strada prendere con questo.