Wêrom Requests mear ferbiningen iepenet as pool_maxsize
Brûk pool_block foar in beheinde poel, en foegje in budzjet op applikaasjenivo ta as de limyt al it ferkear troch in proxy dekke moat.
Mei de standert pool_block=False beheint pool_maxsize de ferbiningen dy't yn in poel bewarre wurde, net elke tagelyk ferbining. Requests kin ekstra's meitsje en dy dêrnei weismite.
Foar in beheinde poel dy't brûkt wurdt troch de HTTPS-fersiken fan in besteande sesje:
from requests.adapters import HTTPAdapter
adapter = HTTPAdapter(
pool_connections=10,
pool_maxsize=4,
pool_block=True,
)
session.mount("https://", adapter)De mount kiest HTTPS-bestimmings-URL's. HTTP-fersiken brûke de adapter dy't ûnder http:// montearre is.
| Ynput | Wat it regelet |
|---|---|
| pool_connections | Hoefolle poelen de behearder ûnthâldt |
| pool_maxsize | Ferbiningen binnen ien poel |
| pool_block=True | Wachtsje op in poelferbining ynstee fan in ekstra meitsje |
Requests ûnthâldt ek proxybehearders per proxy-URL. Dizze wearden foarmje net ien totaal limyt oer in rotearjende list fan proxies en bestimmingen. Brûk in budzjet foar tagelykheid op applikaasjenivo as de eask is dat al it wurk troch ien tuskenpersoan giet.
Blokkearjen makket it frijlitten fan antwurden needsaaklik: ferbrûk lichems of slút streamende antwurden sadat wachtsjend wurk trochgean kin. De adapter fan Requests jout yn 'e toande opstelling gjin aparte tiidlimyt foar dit wachtsjen op 'e poel.