PHP의 비동기 Curl 요청
PHP에서는 여러 cURL 요청을 동시에 실행하는 것이 어려울 수 있습니다. 이로 인해 일관되지 않은 동작이 발생하고 일부 요청이 실행되지 않을 수 있습니다. 이 문제를 해결하려면 비동기/병렬 처리 라이브러리를 사용하거나 내장된 비동기 cURL 기능을 활용하는 두 가지 주요 접근 방식이 있습니다.
1. 비동기 cURL
내장 기능을 사용하려면 다음을 구현하면 됩니다.
<code class="php">$mh = curl_multi_init(); curl_multi_add_handle($mh, $ch1); curl_multi_add_handle($mh, $ch2); $active = null; //execute the handles do { $mrc = curl_multi_exec($mh, $active); } while ($mrc == CURLM_CALL_MULTI_PERFORM); while ($active && $mrc == CURLM_OK) { if (curl_multi_select($mh) != -1) { do { $mrc = curl_multi_exec($mh, $active); } while ($mrc == CURLM_CALL_MULTI_PERFORM); } } //close the handles curl_multi_remove_handle($mh, $ch1); curl_multi_remove_handle($mh, $ch2); curl_multi_close($mh);</code>
2. pThreads
pThreads는 널리 사용되는 PHP용 스레딩 라이브러리입니다. 사용 방법:
<code class="php">class Request1 extends Thread { public function run() { // Execute the first curl request } } class Request2 extends Thread { public function run() { // Execute the second curl request } } $req1 = new Request1(); $req1->start(); $req2 = new Request2(); $req2->start();</code>
이러한 접근 방식을 사용하면 여러 cURL 요청을 동시에 실행하여 모든 요청이 적시에 실행되도록 할 수 있습니다.
위 내용은 PHP에서 여러 cURL 요청을 동시에 실행하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!