如何在PHP循环中加快单个查询?

时间:2014-06-22 14:12:14

标签: php

我尝试通过php创建一个股票网络应用程序。

有一个库存清单(约2,000个库存),每个库存都有指定的ID。

然后我设置一个循环,通过函数file_get_contents从其他站点获取最新价格

这是伪代码,

<?php
$stock_arr=Array();
//get stock ID list from my database then fill the $stock_arr array.
for($i=0;$i<count(stock_arr);$i++){

    $cur_id=stock_arr[$i];
    $url="http://example.com/r=".$cur_id;
    $json=file_get_contens($url);
    updateprice($json,$cur_id);

}

我设置了一个简单的计时器,发现每个查询花费大约0.3秒。

对于2,000只股票,它约为6~8分钟。我不认为这是可以接受的。

由于每个股票的查询和更新都没有关联。我认为可能有更好的算法。

有人可以给我一些提示来加快这个过程吗?谢谢。

1 个答案:

答案 0 :(得分:0)

搜索“curl multi example php”,你可以在这里找到类似的功能 http://kahthong.com/2012/04/php-parallel-curl-request-curlmultiexec-and-curlmultigetcontent