Ако асинхрони захтев истекне пре отварања везе, проверите активна ограничења транспорта као и мрежне тајмауте. libcurl ставља преносе у ред када су та ограничења заузета, а њихови буџети тајмаута се настављају док су у реду.

За дељени cURL multi handler Guzzle 7:

use GuzzleHttp\Client;
use GuzzleHttp\HandlerStack;
use GuzzleHttp\Handler\CurlMultiHandler;

$multi = new CurlMultiHandler([
    'options' => [
        CURLMOPT_MAX_TOTAL_CONNECTIONS => 24,
        CURLMOPT_MAX_HOST_CONNECTIONS => 4,
    ],
]);
$client = new Client([
    'handler' => HandlerStack::create($multi),
]);

Користите овај клијент за асинхрони рад и на операцијама наведите његову предвиђену опцију проксија. Вредности су примерни буџети. За јавне захтеве дозвољене кроз јавни посредник, листа HTTP проксија нуди кандидате за прокси URL-ове операција.

ОпцијаБуџет
MAX_TOTAL_CONNECTIONSИстовремено отворене везе под multi handler-ом
MAX_HOST_CONNECTIONSВезе према једном хосту/порту; прокси везе се рачунају према прокси крајњој тачки
MAXCONNECTSВезе задржане у кешу након употребе

Неколико веб локација које користе исти прокси не добијају аутоматски одвојене дозволе за прокси везе. Капацитет неактивног кеша нити унапред отвара везе нити их чини заменљивим: поновна употреба зависи од руте, одредишта, протокола и аутентификације.

Држите буџет задатака апликације и евентуалну дозволу провајдера усклађене са овим транспортним буџетима. Они броје везе, а не захтеве у секунди. Повећање тајмаута сокета не може утврдити да ли је време потрошио ред или мрежно чекање.

Повезани чланци