Měření časů HEAD v PycURL měří celou trasu přes proxy
Snižte provoz těla odpovědi při měření požadavku přes proxy, aniž byste si pletli kumulativní TTFB s vlastním zpožděním zpracování na proxy.
Požadavek HEAD může snížit provoz těla odpovědi při porovnávání proxy. Na existujícím handleru PycURL, který je již nakonfigurován s cílem, proxy a časovými limity:
handle.setopt(pycurl.NOBODY, True)
handle.perform()
ttfb = handle.getinfo(pycurl.STARTTRANSFER_TIME)
prepared = handle.getinfo(pycurl.PRETRANSFER_TIME)
Tyto hodnoty čtěte po úspěšném přenosu a před zavřením handleru. NOBODY volí HEAD pro HTTP; neodstraňuje hlavičky požadavku, vyjednávání s proxy ani provoz TLS.
STARTTRANSFER_TIME je čas od začátku přenosu do prvního bajtu odpovědi. Zahrnuje přípravu i zpracování na serveru, takže měří tuto trasu a cíl, nikoli izolované zpoždění proxy. PRETRANSFER_TIME pokrývá přípravu protokolu; i po jeho odečtení zůstává práce mimo samotnou proxy.
Udržujte cíl, politiku přesměrování a podmínky opětovného použití spojení stejné napříč srovnáními. Časy přesměrování se sčítají. Nové spojení a znovu použitý tunel odpovídají na různé otázky o výkonu.
HEAD se může chovat jinak než GET. Použijte ho pro lehké pozorování dostupnosti nebo času a potom při výběru trasy pro aplikaci ověřte skutečnou metodu zvlášť.