Settu proxy hvers Guzzle-verks á þá ósamstilltu aðgerð sem safnið (pool) ræsir. Innan núverandi biðlarauppsetningar skaltu nota loforðsverksmiðjur:

$operations = function () use ($client, $jobs) {
    foreach ($jobs as $id => $job) {
        yield $id => function () use ($client, $job) {
            return $client->requestAsync('GET', $job['url'], [
                'proxy' => $job['proxy'],
                'timeout' => 20,
            ]);
        };
    }
};

$pool = new GuzzleHttp\Pool($client, $operations(), [
    'concurrency' => 4,
]);
$pool->promise()->wait();

Hvert staðfest verk veitir áfangastað og proxy. Fyrir leyfða opinbera beiðni getur HTTP-frambjóðandi úr HTTP-proxylistanum veitt proxy-slóð þess verks án skilríkja; valið fer fram áður en verksmiðja þess keyrir. PSR-7 beiðni lýsir HTTP-skilaboðunum, en þessir sendingarvalkostir stýra flutningnum. Að prenta eða geyma proxy-gildi við hlið skilaboðanna getur ekki stillt aðgerð sem sendir það á annan hátt.

Skilaðu requestAsync() úr verksmiðjunni. Kalla á samstillta request() þar getur blokkað á meðan safnið reynir að hefja samhliða vinnu.

Bættu við afturköllum fyrir uppfyllt og hafnað niðurstöður með núverandi meðferð forritsins. Haltu verkslyklinum, auðkenni valsins proxys og tilraunanúmerinu í báðum niðurstöðum; lokaröðin er önnur en inntaksröðin. Veldu ekki í laumi annan endapunkt í verksmiðjunni eftir að einn hefur verið skráður fyrir verkið.

Gildi samhliða er takmörk fyrir vinnu þessa safns. Nokkur verk sem velja eitt takmarkað proxy eða reikning geta samt þurft sérstakt fjárhagsáætlun fyrir þann endapunkt.

Túlkaðu niðurstöður eftir stigum: höfnun áfangastaðar, proxy-auðkenning og tímamörk tengingar eru ólíkar niðurstöður. Sendingarvalkostirnir sem geymdir eru með verkinu sýna hvaða leið framleiddi hverja niðurstöðu.

Tengdir greinar