и на нём есть эндпоинт, который возвращает event stream. Кто не в курсе, это такое соединение с клиентом, которое длится вечно и иногда шлёт ему сообщения с сервера. Для того, чтобы его создать, надо из эндпоинта вернуть Response(генератор, mime_type="text/event-stream"). Генератор, соответственно, либо делает какие-то блокирующие вызовы типа redis.rpop, либо делает неблокирующие всякие запросы в БД и если клиенту послать нечего, делает time.sleep(сколько-то). Если я правильно понимаю, при этом целый тред фласка уходит в обслуживание чисто одного такого потока событий, и, соответственно, мне нужно иметь количество тредов, пропорциональное количеству моих клиентов (что гипотетически дохуя). Вопрос: можно прямо во фласк как-нибудь ввернуть асинхронность так, чтобы не упираться в этом сценарии в количество потоков?
Выглядит как нужно взять вебсокеты и го
кажется нет поскольку у тебя *sgi интерфейс
Обсуждают сегодня