Форум сайта python.su
Привет коллеги.
Есть у меня такая задача, работать с сайтиками через REST api. Всё как бы норм, питон в этом могуч. Заюзал requests-futures, асинхронность все дела. В общем proof of concept работает. Но тут появляется нюанс. Сайты бывают медленные, бывают быстрые. Ответы бывают большие, бывают маленькие. А нужно провести сеанс сбора данных со всех сайтиков и потом с данными работать. И получается что может кто то затупить и всё будет ждать его. Просто выставлять таймаут не подходит. Потому что может это ответ большой от сайта, а может ответ маленький и он просто затупил.
В общем нада бы встроить логику в процесс приёма данных с сайта. Чтобы мониторилась скорость и на основании размера получаемых данных, принималось решение ждать сайта или окончить его мучения.
И чтобы это всё продолжало работать асинхронно.
В современных http client либах я такого что то не встречал. Может плохо искал.
Прошу знатоков придать мне ускорение в нужную сторону. Заранее благодарен.
Офлайн
Content-Length
Офлайн
unkier
И получается что может кто то затупить и всё будет ждать его. Просто выставлять таймаут не подходит. Потому что может это ответ большой от сайта, а может ответ маленький и он просто затупил.
Офлайн
john123
Уточните пожалуйста, “всё” - это что? Кто кого будет ждать?
И что у Вас стоит в приоритете - скорость?
Офлайн