PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Distribuisci l'applicazione Django senza interruzioni del servizio/senza tempi di inattività

Nel caso in cui non disponi di migrazioni di schemi, ti fornisco uno scenario pratico:

Mantieni due versioni dei processi django ( A e B ), che controlli con, diciamo, supervisore. Tieni un processo nginx davanti ai tuoi processi django, che inoltra tutte le richieste ad A. Quindi, carichi la versione B sul server, avvia il processo django B con supervisore, quindi modifica il file conf di nginx in modo che punti a B, quindi ricarica il tuo processo nginx..

Nel caso in cui disponi di migrazioni di schemi, le cose si complicano. Le tue opzioni includono:

  • Potresti considerare l'utilizzo di una soluzione NoSQL, come mongoDB (in questo caso puoi mantenere una singola istanza database).
  • Scopri come registrare manualmente tutte le richieste di scrittura durante il caricamento, per inviarle successivamente al tuo nuovo database.