Estoy usando Django Channels para una barra de progreso en tiempo real. Con la ayuda de esta barra de progreso, el cliente obtiene retroalimentación real de una simulación. Esta simulación puede tardar más de 5 minutos dependiendo del tamaño de los datos. Ahora al problema. El cliente puede iniciar la simulación con éxito, pero durante este tiempo no se puede cargar ninguna otra página. Además me sale el siguiente mensaje de error:
Application instance <Task pending coro=<StaticFilesWrapper.__call__() running at /.../python3.7/site-packages/channels/staticfiles.py:44> wait_for=<Future pending cb=[_chain_future.<locals>._call_check_cancel() at /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/asyncio/futures.py:348, <TaskWakeupMethWrapper object at 0x123aa88e8>()]>> for connection <WebRequest at 0x123ab7e10 method=GET uri=/2/ clientproto=HTTP/1.1> took too long to shut down and was killed.Solo después de que finaliza la simulación, se pueden cargar más páginas.
Ya hay artículos sobre este tema, pero no contienen ninguna solución que funcione para mí. Como por ejemplo en el siguiente enlace: https://github.com/django/channels/issues/1119 Una sugerencia aquí es degradar la versión de Canales. Sin embargo, encuentro otros errores y también debe funcionar con las versiones más nuevas.
El código del consumidor, el enrutamiento y el asgi se implementan exactamente como se requiere en las instrucciones: https://channels.readthedocs.io/en/stable/tutorial/index.html
requisitos.txt:
Django==3.1.2 channels==3.0.3 channels-redis==3.3.1 asgiref==3.2.10 daphne==3.0.2Agradezco cualquier pista o consejo.
Saludos, Denis