Bu PHP CURL kullanarak bir API isteği yapmak için en iyi yolu nedir?

2 Cevap php

Ben http üzerinden kullanılabilecek basit bir API bir site var. Ben API faydalanmak ve bir anda 1000-1500 zamanlarda hakkında veri göndermek istiyor. İşte onların API: http://api.jum.name/

Ben bir gönderme yapmak için URL'yi inşa ettik ama şimdi ben bu 1000-1500 API GET isteklerini yapmak için en iyi yolu nedir merak ediyorum? Burada düşünüyordum PHP CURL uygulamasıdır:

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

Ben CURL bağlantısını ben bir gönderme yapmak her zaman susacak? Ben bu 1000-1500 gönderimleri daha hızlı yapacak daha iyi bir şekilde yukarıda yeniden yazabilir miyim?

Tüm teşekkürler

2 Cevap

PHP'nin kıvırmak, varsayılan olarak,) (curl_exec birden aramalar için bir bağlantı kullanır.

Yani bu durumda, sadece kıvırmak kolu Rusçuk, sen curl_init tarafından var ve URL () curl_exec çağrıları arasında uyuyorsa, bir "Bağlantı: Canlı tutma" gönderecek başlık ve bağlantıyı yeniden.

Bağlantısını kapatın etmeyin ve CURLOPT_FORBID_REUSE koymayın

Ayrıca buraya bakın:

http://stackoverflow.com/questions/972925/persistent-keepalive-http-with-the-php-curl-library

Eğer 5.2 + php erişiminiz varsa, ben son derece php curl_multi öneriyoruz.

Bu, bu durumda kesinlikle kullanışlı gelirdi paralel birkaç kıvırmak isteklerini işlemek için izin verir.

Related documentation : http://us3.php.net/manual/en/ref.curl.php
An example usage : http://www.somacon.com/p537.php