我有一个使用MongoDB来攻击数据库的PHP应用程序。我的问题是,有时候需要进行查询,但会花费很长时间,并且会抛出以下错误:
Catchable fatal error: Argument 1 passed to MongoCollection::__construct() must be an instance of MongoDB, null given in..
即使我打开两个相同的浏览器,如果在每一个浏览器中访问该应用程序,直到其中一个浏览器结束查询,另一个浏览器也不会开始查询。为什么不能并发进行?
我使用的是MongoDB 2.6.5、PHP 5.3.3-7以及PHP MongoDB Driver 1.6.8。
示例代码:
即使我打开两个相同的浏览器,如果在每一个浏览器中访问该应用程序,直到其中一个浏览器结束查询,另一个浏览器也不会开始查询。为什么不能并发进行?
我使用的是MongoDB 2.6.5、PHP 5.3.3-7以及PHP MongoDB Driver 1.6.8。
示例代码:
//Function call from Application
<php>
//Conectamos con la BBDD
$db = connectBbdd("modelo");
$mongoNci = $_SESSION["sesion_nci"];
$collection = new MongoCollection($db, 'users');
$js = "function() {
return this.Nci == '$mongoNci';
}";
$cursor = $collection->find(array('$where' => $js));
$array = iterator_to_array($cursor);
</php>
<php>
function connectBbdd($dbname){
Mongo::setPoolSize(10);
$m = new MongoClient("mongodb://ipremote:port");
$db = $m->$dbname;
return $db;
}
</php>