Каналы Django: Как запустить AsyncConsumer в качестве рабочего - PullRequest
0 голосов
/ 23 сентября 2019

В каналах Django я хочу запустить AsyncConsumer в бесконечном цикле как отдельный процесс, как рабочий.Я не могу использовать обычного работника, потому что имя канала там фиксировано.

В моем случае я хочу использовать свое собственное имя канала для отправки данных.Я хочу создать новое имя канала для прослушивания потребителем.

Я смог сделать это грубо, просто создав собственный канал, как показано ниже.

self.layer = get_channel_layer()
self.channel_name = await self.layer.new_channel()

Аналогично отправка

await self.layer.send(self.master, data)

Но, я подумал, если мы сможем использовать AsyncConsumer и рекомендуемый способ прослушивания в цикле (как в runworker), это может быть большеконюшня.

Есть мысли ...

...