Fi proxy iṣẹ́ Guzzle kọ̀ọ̀kan sórí iṣẹ́ async tí adágún bẹ̀rẹ̀. Nínú ètò alábàákẹ́gbẹ́ tó ti wà, lo àwọn ilé-iṣẹ́ ìlérí:

$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();

Iṣẹ́ kọ̀ọ̀kan tí a ti ṣàyẹ̀wò ń pèsè ibi-àfojúsùn àti proxy kan. Fún ìbéèrè gbangba tí a gbà láàyè, olùdíje HTTP kan láti àkójọ proxy HTTP lè pèsè URL proxy iṣẹ́ yẹn láìsí ẹ̀rí ìdánimọ̀; yíyàn máa ń ṣẹlẹ̀ kí ilé-iṣẹ́ rẹ̀ tó ṣiṣẹ́. Ìbéèrè PSR-7 ń ṣàpèjúwe ìfiránṣẹ́ HTTP, nígbà tí àwọn àṣàyàn ìránṣẹ́ wọ̀nyí ń darí gbígbé. Títẹ̀ tàbí títọ́jú iye proxy lẹ́gbẹ̀ẹ́ ìfiránṣẹ́ kò lè ṣètò iṣẹ́ tí ń rán an ní ọ̀nà mìíràn.

Dá requestAsync() padà láti ilé-iṣẹ́. Pípè request() àfọwọ́kàn níbẹ̀ lè dídì nígbà tí adágún ń gbìyànjú láti bẹ̀rẹ̀ iṣẹ́ àpapọ̀.

Fi àwọn ìpè-padà kún fún àwọn èsì tí ó ṣẹ́ àti tí a kọ̀, ní lílo ìtọ́jú tó wà nínú ètò náà. Tọ́jú kọ́kọ́rọ́ iṣẹ́, ìdánimọ̀ proxy tí a yàn àti nọ́mbà ìgbìyànjú nínú èsì méjèèjì; ìlànà ìparí yàtọ̀ sí ìlànà ìwọlé. Má ṣe yan ojú-ìparí mìíràn ní ìkọ̀kọ̀ nínú ilé-iṣẹ́ lẹ́yìn tí a ti kọ ọ̀kan sílẹ̀ fún iṣẹ́ náà.

Iye ìgbà-kan ń dín iṣẹ́ adágún yìí kù. Ọ̀pọ̀ iṣẹ́ tí ń yan proxy tàbí àkọsílẹ̀ kan tí ó ní ààlà lè ṣì nílò ìsúná owó ọ̀tọ̀ fún ojú-ìparí yẹn.

Ṣàlàyé àwọn èsì ní ìpele: ìkọ̀ ojú-ìparí, ìjẹ́rìí proxy àti àkókò ìsopọ̀ tí ó dópin jẹ́ èsì ọ̀tọ̀ọ̀tọ̀. Àwọn àṣàyàn ìránṣẹ́ tí a tọ́jú pẹ̀lú iṣẹ́ ń fi hàn ọ̀nà wo ló mú èsì kọ̀ọ̀kan jáde.

Àwọn àpilẹ̀kọ tó jọra