Guzzle Pool: dlulisa i-proxy yomsebenzi ngamunye ku-requestAsync
Namathisela izinketho ze-proxy kumsebenzi ngamunye we-async esikhundleni somlayezo wesicelo se-PSR-7 noma ifektri evimbayo.
Beka i-proxy yomsebenzi ngamunye we-Guzzle kumsebenzi we-async oqalwa yipholi. Ngaphakathi kokuhlelwa kweklayenti okukhona, sebenzisa amafektri ezithembiso:
$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();
Umsebenzi ngamunye oqinisekisiwe unikeza indawo nokuya kuyo kanye ne-proxy. Esicelweni somphakathi esivunyelwe, umgadli we-HTTP ovela kuhlu lwe-proxy lwe-HTTP angahlinzeka nge-URL ye-proxy yalowo msebenzi ngaphandle kwezicelo zokuqinisekisa; ukukhetha kwenzeka ngaphambi kokuthi ifektri yayo isebenze. Isicelo se-PSR-7 sichaza umlayezo we-HTTP, kanti lezi zinketho zokuthumela zilawula ukuthuthwa. Ukuphrinta noma ukugcina inani le-proxy eduze komlayezo akukwazi ukuhlela umsebenzi owuthumelayo ngendlela ehlukile.
Buyisela requestAsync() kusuka efektri. Ukushaya request() ehambisanayo lapho kungavimba ngesikhathi ipholi izama ukuqala umsebenzi okanye ngesikhathi.
Engeza ama-callback emiphumela egcwalisiwe neyenqatshiwe usebenzisa ukuphatha okukhona kohlelo. Gcina ukhiye womsebenzi, isihlonzi se-proxy ekhethiwe kanye nenombolo yomzamo kuyo yomibili imiphumela; ukuhleleka kokuqedwa kwehlukile ekuhlelekeni kokufakwa. Ungakhethi ngasese enye indawo yokugcina efektri ngemva kokurekhoda eyodwa yomsebenzi.
Inani lokwenzeka kanyekanye likhawulela umsebenzi wale pholi. Imisebenzi eminingi ekhetha i-proxy eyodwa ekhawulelwe noma i-akhawunti ingase isadinga isabelomali esihlukile sale ndawo yokugcina.
Hlaziya imiphumela ngesigaba: ukwenqatshwa kwendawo, ukuqinisekiswa kwe-proxy nokuphela kwesikhathi sokuxhumana kuyimiphumela ehlukile. Izinketho zokuthumela ezigcinwe nomsebenzi zibonisa ukuthi iyiphi indlela ekhiphe umphumela ngamunye.