Django 频道和 uWSGI

Posted

技术标签:

【中文标题】Django 频道和 uWSGI【英文标题】:Django Channels Along with uWSGI 【发布时间】:2019-02-15 03:33:17 【问题描述】:

我目前使用 docker、nginx、uWSGI、redis、Django 和 Angular 开发的 Django rest api。

我正在添加几个 websocket 端点,我想保留现有架构并继续通过 uWSGI 和 nginx 服务 http 请求。并使用 Django 通道(使用 nginx)进行网络套接字连接。

这可能吗?如果是这样,我可以只使用一个容器并在不同的端口上启动 uWSGI 和 daphne 吗?还是我需要单独的 Django 应用程序用于通道和单独的容器?

【问题讨论】:

【参考方案1】:

是的,只需确保您的 urls.py 中的路径不与您的 CHANNELS_LAYER 中的路由重叠

CHANNEL_LAYERS = 
    "default": 
        # ...
        "ROUTING": "websockets.routing.channel_routing",
    ,
 

【讨论】:

@Aj1 没问题

以上是关于Django 频道和 uWSGI的主要内容,如果未能解决你的问题,请参考以下文章

Django 频道:消息在一个频道中重复

Django 频道“组订阅中 N 个频道中的 ERROR Y 超出容量”

使用 Daphne 服务 Django 和频道

使用 django 频道时如何使用频道而不是组?

Django - Celery Worker - 频道

使用 django 频道和 websockets