我已经安装了 Redis 3.0.54
. django已更新。我正在从教程页面学习频道。
这是我的终端窗口,用于redis cli和终端的redis服务器映像
System check identified no issues (0 silenced).
August 06, 2020 - 16:04:58
Django version 3.1, using settings 'mysite.settings'
Starting ASGI/Channels version 2.4.0 development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
HTTP GET /chat/lobby/ 200 [0.02, 127.0.0.1:60841]
WebSocket HANDSHAKING /ws/chat/lobby/ [127.0.0.1:60843]
WebSocket CONNECT /ws/chat/lobby/ [127.0.0.1:60843]
Exception inside application: ERR unknown command 'BZPOPMIN'
Traceback (most recent call last):
File "C:\Users\\Envs\py2\lib\site-packages\channels\sessions.py", line 183, in __call__
return await self.inner(receive, self.send)
File "C:\Users\\Envs\py2\lib\site-packages\channels\middleware.py", line 41, in coroutine_call
await inner_instance(receive, send)
File "C:\Users\\Envs\py2\lib\site-packages\channels\consumer.py", line 59, in __call__
[receive, self.channel_receive], self.dispatch
File "C:\Users\\Envs\py2\lib\site-packages\channels\utils.py", line 58, in await_many_dispatch
await task
File "C:\Users\\Envs\py2\lib\site-packages\channels\utils.py", line 50, in await_many_dispatch
result = task.result()
File "C:\Users\\Envs\py2\lib\site-packages\channels_redis\core.py", line 453, in receive
real_channel
File "C:\Users\\Envs\py2\lib\site-packages\channels_redis\core.py", line 508, in receive_single
index, channel_key, timeout=self.brpop_timeout
File "C:\Users\\Envs\py2\lib\site-packages\channels_redis\core.py", line 345, in _brpop_with_clean
result = await connection.bzpopmin(channel, timeout=timeout)
aioredis.errors.ReplyError: ERR unknown command 'BZPOPMIN'
WebSocket DISCONNECT /ws/chat/lobby/ [127.0.0.1:60843]
2条答案
按热度按时间czq61nw11#
从这里下载最新版本的redis并试用它会很管用
https://github.com/tporadowski/redis/releases
e37o9pze2#
bzpopmin和bzpopmax(也是非阻塞版本
ZPOPMIN
以及ZPOPMAX
)是“从5.0.0开始提供”。因为您使用的是版本3.0.54,所以您至少需要将redis升级到版本5才能使用它们。您可以在下载页面中查看可用的版本和下载说明。