-django graciosa-session-limpieza es una orden de gestión sencilla que puede eliminar sesiones expiradas de grandes mesas de sesión sin matar al sitio.
El caso de uso principal es si usted tiene una aplicación en vivo con millones de sesiones rancios en la base de datos. Runnung la limpieza regular de python manage.py potencialmente bloquear la base de datos por horas, esencialmente matando a su sitio.
Con django-graciosa-session-limpieza puede eliminar gradualmente todas las sesiones.
Para lograr esto siempre sólo eliminar una pequeña cantidad de las sesiones caducadas por consulta y luego dormir durante unos pocos segundos. Hay opciones de línea de comandos para controlar el intervalo, el tiempo de sueño y la cantidad de sesiones para eliminar por intervalo.
Instalación
instalar el paquete:
PIP instalar django-graciosa-session-limpieza
añadirlo a INSTALLED_APPS:
INSTALLED_APPS = [
& Nbsp; ....
& Nbsp; "graceful_session_cleanup ',
]
ejecute el mandato de gestión:
python manage.py graceful_session_cleanup
Hay algunas opciones que puede utilizar:
python manage.py graceful_session_cleanup --sleep segundos 9 --delete conteo 1000 --iteration conteo 200
Esto eliminará 1.000 entradas sesión ha finalizado, espere 5 segundos para que otros procesos pueden utilizar la base de datos y luego repetir esto 200 veces. Dependiendo de la carga de base de datos (suponiendo borrado toma 1s) esto tomará (9s + 1s) * 200 = 2000s.
hay ayuda en la línea de comandos:
& Nbsp; python manage.py ayuda graceful_session_cleanup
Uso: graceful_session_cleanup django [opciones]
Se puede ejecutar como una tarea programada o directamente para limpiar los datos antiguos de la base de datos (sólo expirado sesiones en el momento). ¿Esto de una manera amistosa db en vivo por nunca acaparando la conexión demasiado tiempo.
Opciones:
& Nbsp; -v verbosidad, --verbosity = verbosidad
& Nbsp; nivel de detalle; 0 = salida mínima, 1 = salida normal,
& Nbsp; 2 = todos los resultados
& Nbsp; - settings = Configuración La ruta Python a un módulo de configuración, por ejemplo,
& Nbsp; "myproject.settings.main". Si no se proporciona, la
& Nbsp; variable de entorno DJANGO_SETTINGS_MODULE será
& Nbsp; se usa.
& Nbsp; - PYTHONPATH = PYTHONPATH
& Nbsp; Un directorio para añadir a la ruta de Python, por ejemplo,
& Nbsp; "/ home / djangoprojects / miproyecto".
& Nbsp; - rastreo Imprimir rastreo de excepción
& Nbsp; -s SLEEP_SECONDS, --sleep-segundos = SLEEP_SECONDS
& Nbsp; ¿Cuánto tiempo para dormir entre cada operación de borrar.
& Nbsp; DELETE_COUNT -c, --delete-count = DELETE_COUNT
& Nbsp; ¿Cuántas sesiones expiradas eliminar por iteración.
& Nbsp; ITERATION_COUNT -i, --iteration-count = ITERATION_COUNT
& Nbsp; ¿Cuántas iteraciones se ejecute.
& Nbsp; - número de versión versión show de programa y salir
& Nbsp; -h, --help muestra este mensaje de ayuda y termina
Requisitos :
- Python
- Django
Comentarios que no se encuentran