我目前,Django rest api是使用docker,nginx,uWSGI,redis,Django和Angular开发的。
我正在添加几个websocket端点,我想保留现有的架构,并通过uWSGI和nginx继续提供http请求。并使用Django通道(使用nginx)进行Web套接字连接。
那可能吗?如果是这样,我可以只使用一个容器并在不同的端口上启动uWSGI和daphne吗?或者我是否需要单独的Django应用程序用于所有频道和单独的容器?
是的,只需确保urls.py
中的路径与CHANNELS_LAYER
的路由不重叠
CHANNEL_LAYERS = {
"default": {
# ...
"ROUTING": "websockets.routing.channel_routing",
},
}