with tutorial framework espaƱol applications python ajax django asynchronous django-celery

python - tutorial - Procesamiento de fondo en Django sin apio



framework django python (3)

Solo conozco una alternativa a Aplery que es más liviana: Cola en django-utils .

Otra forma es usar el módulo de subproceso directamente, pero probablemente tendrá que resolver algunos problemas que ya están resueltos en Apio y django-utils .

Tengo una parte muy pequeña de un sitio de Django que mantiene el estado de una sesión de chat moderada entre dos usuarios. Básicamente, el primer usuario habla durante 3 minutos (y nadie más puede), luego el segundo usuario habla, luego una pausa de 30 segundos, y el proceso se repite una vez más. Actualmente estoy usando la base de datos y un modelo de "RoomState" para administrar el estado actual de la sala (quién puede hablar, etc.). Las transiciones de estado se ven afectadas por el hecho de que el cliente envíe un mensaje POST de AJAX "ping" cada 10 segundos a una de mis vistas, que verifica si es hora de cambiar de estado.

Esto funciona, pero definitivamente se siente hacky. Me preguntaba si había algo más liviano que django-apio + rabbitmq para administrar tareas de segundo plano de vida corta en un temporizador. Me doy cuenta de que la naturaleza de la web / Django es apátrida, pero solo quería ver si alguien tenía una sugerencia simple para administrar las transiciones de estado de una manera más confiable.


Autor de django-utils aquí, sugiero probar mi nuevo proyecto Huey : tiene un conjunto de funciones más completo, mejores documentos, más estable y funciona con cualquier framework de Python (incluido django). Docs .