За последние 24 часа нас посетили 18942 программиста и 1616 роботов. Сейчас ищут 1077 программистов ...

CURL и Keep-alive

Тема в разделе "Прочие вопросы по PHP", создана пользователем JonnyB, 29 фев 2012.

  1. JonnyB

    JonnyB Активный пользователь

    С нами с:
    13 дек 2009
    Сообщения:
    24
    Симпатии:
    0
    Адрес:
    Самара
    Итак, для осуществления запросов в том же соединении нам необходимо:
    1. Отправить 2 заголовка:
    Connection: Keep-Alive
    и
    Keep-Alive: 1000
    2. Сказать curl что нужно использовать HTTP 1.1 принудительно
    curl_setopt($this->_ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
    3. Не делать curl_close()

    Я ничего не упустил?

    Тут у меня два вопроса:
    1. Если я делаю такую последовательность запросов: http://www.ya.ru/, http://www.google.ru/, http://www.ya.ru/logo.png - будет ли последний запрос в кипаливе?
    2. Соблюдая все 3 вышеуказанных пункта делаю запрос к 500 страницам, судя по iptraf на каждый запрос открывается свое соединение - то есть не в keep-alive. Что я мог упустить?
     
  2. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    а как серверный кипэлайв связан с вашей клиенсткой библиотекой curl?
    или вы хотите использовать яндексовский кипэлайв для получения первой и третей ссылки в одном сеансе?
     
  3. JonnyB

    JonnyB Активный пользователь

    С нами с:
    13 дек 2009
    Сообщения:
    24
    Симпатии:
    0
    Адрес:
    Самара
    Ganzal, мне интересно узнать поведения curl при таком раскладе, хочу как раз узнать как связано. Инструментов что бы такое подслушать не нашел.
    Я могу сделать и по инстунсу курла на каждый хост, тут я просто уточняю поведение curl'а.
    В данный момент меня напрягает то что даже для одного хоста на каждый запрос создается по соединению - вроде не должно так быть.