Запыт HEAD дазваляе паменшыць трафік цела адказу пры параўнанні проксі. На існуючым дэскрыптары PycURL, ужо настроеным на прызначэнне, проксі і тайм-аўты:

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

Чытайце гэтыя значэнні пасля паспяховай перадачы і перад закрыццём дэскрыптара. NOBODY выбірае HEAD для HTTP; ён не выдаляе загалоўкі запыту, узгадненне з проксі або трафік TLS.

STARTTRANSFER_TIME — гэта час ад пачатку перадачы да першага байта адказу. Ён уключае падрыхтоўку і апрацоўку на серверы, таму гэта замер менавіта гэтага шляху і прызначэння, а не ізаляванай затрымкі проксі. PRETRANSFER_TIME пакрывае падрыхтоўку пратакола; калі яго адняць, за проксі ўсё яшчэ застаецца праца.

Трымайце прызначэнне, палітыку перанакіравання і ўмовы паўторнага выкарыстання злучэння аднолькавымі ва ўсіх параўнаннях. Час перанакіраванняў назапашваецца. Новае злучэнне і паўторна выкарыстаны тунель адказваюць на розныя пытанні прадукцыйнасці.

HEAD можа паводзіць сябе інакш, чым GET. Выкарыстоўвайце яго для лёгкага назірання за даступнасцю або часам, затым асобна праверце фактычны метад пры выбары маршруту для праграмы.

Падобныя артыкулы