2009-06-16 10 views
1

Ich habe eine Website, die eine einfache API hat, die über http verwendet werden kann. Ich möchte die API nutzen und Daten 1000 bis 1500 Mal gleichzeitig übermitteln. Hier ist ihre API: http://api.jum.name/Ist dies der beste Weg, um eine API-Anfrage mit PHP CURL zu machen?

Ich habe die URL erstellt, um eine Einreichung zu machen, aber jetzt frage ich mich, was ist der beste Weg, um diese 1000-1500 API GET Anfragen zu machen? Hier ist die PHP CURL Implementierung Ich dachte an:

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

Soll ich die CURL Verbindung zu schließen, jedesmal wenn ich eine Vorlage machen? Kann ich das oben beschriebene besser umschreiben, sodass diese 1000-1500 Einsendungen schneller werden?

Dank all

Antwort

1

PHP curl, standardmäßig eine Verbindung für mehrere Anrufe wieder verwendet curl_exec().

Also in diesem Fall, Sie nur die Curl Handle, Sie haben durch curl_init und wenn die URL zwischen den Aufrufen von curl_exec() übereinstimmt, wird es eine "Connection: keep-alive" Header senden und die Verbindung wiederverwenden.

Schließen Sie nicht die Verbindung und nicht setzen CURLOPT_FORBID_REUSE

auch hier sehen:

Persistent/keepalive HTTP with the PHP Curl library?