1

複数のページを並行してフェッチするのを容易にする PHP 用のマルチ カール ライブラリを使用しました (基本的に使いやすい API)。

My Scenario: API からユーザー データを取得して処理し、結果を保存します。データをフェッチする必要があるすべてのユーザーがキューに配置されます。この全体のフェッチ、処理、および結果の保存には、ほぼ 8 ~ 10 分かかります。そして、同期的に処理すると非常にコストがかかります。そこで、マルチスレッドに php curl ライブラリを使用しました。ブラウザで実行すると問題なく動作しますが、cron ジョブなので、コマンド ラインを使用して同じスクリプトを実行する必要があります。私がそうするとき; 効果がないでしょう。誰でも私を助けることができますか?前もって感謝します。

疑似コード:

$query = " Fetch users based on certain criteria LIMIT 200" ; 
$result = execute-query ;

$curl_handle = curl_multi_init();
$i = 0;
$curl = array();

while ($row = mysql_fetch_assoc($result)) {    
    $curl[$i] = add_handle($curl_handle, API_CALL);
}

exec_handle($curl_handle);

for ($j = 0; $j < count($curl); $j++)//remove the handles
    curl_multi_remove_handle($curl_handle, $curl[$i]);

curl_multi_close($curl_handle);

// 参考URL http://codestips.com/php-multithreading-using-curl/

4

0 に答える 0