【问题标题】:Django Channels Worker is returning TypeError: zadd() got an unexpected keyword argument 'daphneDjango Channels Worker 正在返回 TypeError: zadd() got an unexpected keyword argument 'daphne
【发布时间】:2019-03-27 17:04:29
【问题描述】:

在我的服务器中,我正在为 Django 频道运行 Daphne 和 Worker。

我已经重启了所有容器(我使用 Docker),清理了 Redis 缓存。

今天,这些应用程序停止工作并返回此堆栈:

KeyError: 'leads-198'
2019-03-27 13:51:59,719 - ERROR - worker - Error processing message with consumer crm.consumers.ws_connect:
Traceback (most recent call last):
File "/usr/local/lib/python3.6/site-packages/channels/worker.py", line 119, in run
consumer(message, **kwargs)
File "/usr/local/lib/python3.6/site-packages/channels/sessions.py", line 78, in inner
return func(*args, **kwargs)
File "/usr/local/lib/python3.6/site-packages/channels/auth.py", line 42, in inner
return func(message, *args, **kwargs)
File "/opt/app/integrador/crm/consumers.py", line 10, in ws_connect
Group(group).add(message.reply_channel)
File "/usr/local/lib/python3.6/site-packages/channels/channel.py", line 70, in add
self.channel_layer.group_add(self.name, channel)
File "/usr/local/lib/python3.6/site-packages/asgi_redis/core.py", line 291, in group_add
**{channel: time.time()}
TypeError: zadd() got an unexpected keyword argument 'daphne.response.lGekRGuTPv!bsgpJbNJLP'

crm - 是我在 Django 中的应用程序

leads-198 - 是频道组

Requirements.txt:

boto3

coreapi

Django==1.11

asgi_redis==1.2.1

频道==1.1.8

达芙妮==1.3

芹菜==4.1

PyMySQL

djangorestframework==3.7.7

django-oauth-toolkit==0.12.0

django-cors-headers==2.1.0

django-redis==4.5.0

django-storages==1.5.1

乌鸦==5.30.0

jsonfield==1.0.3

请求==2.18.4

简单的json

suds-py3==1.3.2.0

xmltodict==0.10.2

有什么建议吗?

谢谢

【问题讨论】:

    标签: django django-channels daphne asgi


    【解决方案1】:

    如果您使用的是Redis 3.0或以上版本,则无法使用1.1.8版本的频道,因此您必须安装redis 2.10.6版本。

    【讨论】:

      【解决方案2】:

      我发现了问题。

      是库的版本。下面是新的 requirements.txt。我更新 asgi_redis 和 django-redis

      boto3

      Django==1.11

      asgi_redis==1.4.3

      频道==1.1.8

      达芙妮==1.3

      芹菜==4.1

      PyMySQL

      djangorestframework==3.7.7

      django-oauth-toolkit==0.12.0

      django-cors-headers==2.1.0

      django-redis==4.10.0

      django-storages==1.5.1

      乌鸦==5.30.0

      jsonfield==1.0.3

      请求==2.18.4

      简单的json

      suds-py3==1.3.2.0

      xmltodict==0.10.2

      【讨论】:

        【解决方案3】:

        我似乎能够让 redis >=3 使用频道 1.1.8

        (project) Jamess-MacBook-Pro-2:project jlin$ pip freeze | grep redis
        asgi-redis==1.4.3
        django-redis==4.8.0
        redis==3.5.3
        (project) Jamess-MacBook-Pro-2:project jlin$ pip freeze | grep channel
        channels==1.1.8
        (project) Jamess-MacBook-Pro-2:project jlin$ pip freeze | grep kombu
        kombu==4.2.2.post1
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-01-19
          • 1970-01-01
          • 1970-01-01
          • 2015-10-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多