質問

http経由で使用できるシンプルなAPIを備えたサイトがあります。 APIを使用して、一度に約1000〜1500回データを送信したいと思います。 APIは次のとおりです。 http://api.jum.name/

送信するためにURLを作成しましたが、これらの1000-1500 API GETリクエストを行うための最良の方法は何ですか?私が考えていたPHP CURLの実装は次のとおりです。

$add = 'http://www.mysite.com/3rdparty/API/api.php?fn=post&username=test&password=tester&url=http://google.com&category=21&title=story a&content=content text&tags=Season,news';
curl_setopt ($ch, CURLOPT_URL, "$add");
curl_setopt ($ch, CURLOPT_POST, 0);
curl_setopt ($ch, CURLOPT_COOKIEFILE, 'files/cookie.txt');
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 0);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, TRUE);
$postdata = curl_exec ($ch);

提出するたびにCURL接続を閉じますか?これらの1000-1500件の提出をより速くするために、上記をより良い方法で書き直すことはできますか?

ありがとうございます

役に立ちましたか?

解決

PHPのcurlは、デフォルトでcurl_exec()への複数の呼び出しに接続を再利用します。

したがって、この場合、curl_initで取得したcurlハンドルを使用し、curl_exec()の呼び出し間でURLが一致する場合、「Connection:keep-alive」を送信します。ヘッダーを作成し、接続を再利用します。

接続を閉じたり、CURLOPT_FORBID_REUSEを設定したりしないでください

こちらもご覧ください:

PHP Curlライブラリを使用したHTTP >

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top