sql >> Base de Datos >  >> RDS >> PostgreSQL

Implemente la aplicación Django sin interrupción del servicio / sin tiempo de inactividad

En el caso de que no tenga migraciones de esquema, le daré un escenario práctico:

Mantenga dos versiones de los procesos de django (A y B), que controla con, digamos, supervisor. Mantenga un proceso nginx frente a sus procesos django, que reenvía todas las solicitudes a A. Entonces, carga la versión B en el servidor, inicia el proceso B django con el supervisor, luego cambia el archivo conf de su nginx para que apunte a B, luego vuelve a cargar su proceso nginx..

En el caso de que tengas migraciones de esquema, la cosa se complica. Sus opciones incluyen:

  • Podría considerar usar una solución NoSQL, como mongoDB (en este caso, puede conservar una única instancia de base de datos).
  • Averigüe cómo registrar manualmente todas las solicitudes de escritura durante la carga, para enviarlas más tarde a su nueva base de datos.