Požiadavka HEAD môže znížiť prevádzku tela odpovede pri porovnávaní proxy. Na existujúcom handleri PycURL, ktorý je už nakonfigurovaný s cieľom, proxy a časovými limitmi:

handle.setopt(pycurl.NOBODY, True)
handle.perform()
ttfb = handle.getinfo(pycurl.STARTTRANSFER_TIME)
prepared = handle.getinfo(pycurl.PRETRANSFER_TIME)

Tieto hodnoty čítajte po úspešnom prenose a pred zatvorením handlera. NOBODY volí HEAD pre HTTP; neodstraňuje hlavičky požiadavky, vyjednávanie s proxy ani prevádzku TLS.

STARTTRANSFER_TIME je čas od začiatku prenosu po prvý bajt odpovede. Zahŕňa prípravu aj spracovanie na serveri, takže meria túto trasu a cieľ, nie izolované oneskorenie proxy. PRETRANSFER_TIME pokrýva prípravu protokolu; aj po jeho odpočítaní zostáva práca mimo samotného proxy.

Udržujte cieľ, politiku presmerovania a podmienky opätovného použitia spojenia rovnaké vo všetkých porovnaniach. Časy presmerovania sa sčítavajú. Nové spojenie a opäť použité tunel odpovedajú na rôzne otázky o výkone.

HEAD sa môže správať aj inak ako GET. Použite ho na ľahké pozorovanie dostupnosti alebo času a potom pri výbere trasy pre aplikáciu overte skutočnú metódu osobitne.

Súvisiace články