如何在同一主机上 运行 2 个具有 Django 频道的站点?
How to run 2 sites with Django channels on the same host?
我尝试用 supervisord 启动 2 个 daphne 服务器和 2 个 worker。
但有时来自站点 #1 的请求在工人 #2 上,而来自站点 #2 的请求在工人 #1 上。
我应该使用不同的 Redis 服务器吗? Rly?
还是我在设置中缺少某些参数?
CHANNEL_LAYERS = {
'default': {
'BACKEND': 'asgi_redis.RedisChannelLayer',
'CONFIG': {
'hosts': [('{{redis_server}}', 6379)],
},
'ROUTING': '{{app}}.routing.channel_routing',
},
}
您需要唯一的 prefix
参数:
CHANNEL_LAYERS = {
"default": {
"BACKEND": "asgi_redis.RedisChannelLayer",
"CONFIG": {
"hosts": [("localhost", 6379)],
"prefix": "gradcam",
},
"ROUTING": "gradcam.routing.channel_routing",
},
}
我尝试用 supervisord 启动 2 个 daphne 服务器和 2 个 worker。
但有时来自站点 #1 的请求在工人 #2 上,而来自站点 #2 的请求在工人 #1 上。
我应该使用不同的 Redis 服务器吗? Rly?
还是我在设置中缺少某些参数?
CHANNEL_LAYERS = {
'default': {
'BACKEND': 'asgi_redis.RedisChannelLayer',
'CONFIG': {
'hosts': [('{{redis_server}}', 6379)],
},
'ROUTING': '{{app}}.routing.channel_routing',
},
}
您需要唯一的 prefix
参数:
CHANNEL_LAYERS = {
"default": {
"BACKEND": "asgi_redis.RedisChannelLayer",
"CONFIG": {
"hosts": [("localhost", 6379)],
"prefix": "gradcam",
},
"ROUTING": "gradcam.routing.channel_routing",
},
}