Сергей Горностаев, есть как и зависимые запросы, так и независимые.
К примеру первые два независимые.
3 - 6 зависят от первых двух
Т.е. как я понимаю, нужно первые два отправить асинхронно. "Обработать" их, отправить остальные 4 запроса тоже асинхронно.
Как мне дождаться в celery выполнения первых двух запросов?
Сергей Горностаев, но если таска будет ждать результата, а после запускать другую и тд, то время выполнения все равно будет ~2 минуты
Или делать отдельную таску на каждый из 6 запросов.
javedimka, нет, не только запросы. Личный кабинет, пополнение баланса и тд. Фреймворк был выбран для изучения python, но просто так изучать было не интересно, поэтому написал небольшой проект.
Сергей Горностаев, в представлении django написан следующий код:
отправляем 1 запрос на сервер (это сторонние апи)
получаем результат (время выполнения запроса ~20 сек)
обрабатываем
отправляем 2 запрос на сервер (это сторонние апи)
получаем результат (время выполнения запроса ~20 сек)
обрабатываем
...
После выполнения всех 6 запросов записываем результат в бд
К примеру каждый запрос занял 20 сек*6 = 2 минуты на выполнение всех запросов.
Хотелось бы отправить все запросы одновременно и снизить это время до примерных 20 сек
Установил rabbitmq и на стандартных настройках все заработало.
Вопрос отдаленный от темы, но все же.
Правильно ли я вообще понял и можно ли так делать, а именно - использовать post/get запросы, добавлять записи в бд?