求教Channels中的问题--报错took too long to shut down and was killed
问题描述:
channels能正常启动,可是在启动的一段时间后,websocket无法连接,终端打印的信息为如下
> > websocket Diconnect ... > Application instance <Task pending coro=<SessionMiddlewareInstance.call() running at E:\WorkProject\channels\venv\lib\site-packages\channels\sessions.py:180> wait_for=<Future pending cb=[_chain_future.<locals>._call_check_cancel() at D:\Python\Python36\Lib\asyncio\futures.py:403, <TaskWakeupMethWrapper object at 0x0000022B7BA3D198>()]>> for connection <WebSocketProtocol client=['10.1.200.20', 59804] path=b'/ws/alarmdata/'> took too long to shut down and was killed. >
此时,channels中所有的websocket 接口无法再连接。这个错误是在程序启动一段时间后偶然发生,又是运行一整天也不会出现此情况。在stackoverflow上看到是在disconnect中加 raise StopConsumer(),可惜没有用,请教大家这种情况该如何解决?
我怀疑是win10的原因,明天试试在linux上运行试试
评论 1
是否使用了nginx呢,proxy_read_timeout设置时间大一点