Эмне үчүн Requests pool_maxsize'тен көбүрөөк туташуу ачат
Чектелген пул үчүн pool_block колдонуңуз, ал эми чек прокси аркылуу өткөн бардык трафикти камтууга тийиш болсо, колдонмо деңгээлиндеги бюджетти кошуңуз.
Демейки pool_block=False менен pool_maxsize пулда кармалган туташууларды чектейт, бир убактагы ар бир туташууну эмес. Requests кошумча туташууларды түзүп, анан аларды таштай алат.
Учурдагы сессиянын HTTPS сурамдары колдонгон чектелген пул үчүн:
from requests.adapters import HTTPAdapter
adapter = HTTPAdapter(
pool_connections=10,
pool_maxsize=4,
pool_block=True,
)
session.mount("https://", adapter)Монтаждоо HTTPS максаттуу URL'дерин тандайт. HTTP сурамдары http:// астында орнотулган адаптерди колдонот.
| Кирүү | Эмнени башкарат |
|---|---|
| pool_connections | Менеджер канча пулду кэште сактайт |
| pool_maxsize | Бир пулдун ичиндеги туташуулар |
| pool_block=True | Кошумча түзүүнүн ордуна пул туташуусун күтүү |
Requests ошондой эле прокси менеджерлерин прокси URL'и боюнча кэштейт. Бул маанилер айланма проксилер жана максаттар тизмеси боюнча бир жалпы чек түзбөйт. Эгер бардык жумуш бир ортомчу аркылуу өтүшү талап кылынса, колдонмо деңгээлиндеги параллелдүүлүк бюджетине колдонуңуз.
Бөгөттөө жоопторду бошотууну милдеттүү кылат: денелерди керектеңиз же агымдуу жоопторду жабыңыз, ошондо күтүп турган жумуш улантыла алат. Көрсөтүлгөн конфигурацияда Requests адаптери бул пул күтүүсү үчүн өзүнчө тайм-аут бербейт.