我的网站有一个简单的API,可以通过http使用。我希望一次使用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次提交?
全部谢谢
答案 0 :(得分:3)
如果您可以访问php 5.2+,我强烈推荐使用php的curl_multi。
这允许您并行处理多个curl请求,在这种情况下肯定会派上用场。
相关文档:http://us3.php.net/manual/en/ref.curl.php
示例用法:http://www.somacon.com/p537.php
答案 1 :(得分:1)
默认情况下,PHP的curl会重复使用连接来调用curl_exec()。
所以在这种情况下,你只需要通过curl_init来获取curl句柄,如果URL与curl_exec()的调用之间匹配,它将发送一个“Connection:keep-alive”标题并重用连接。
不要关闭连接,也不要设置CURLOPT_FORBID_REUSE
另见: