我正在使用Zend Framework,PHP 5.3和PostGres开发一个项目。我构建了一个javascript前端,它严重依赖于AJAX请求。
例如,每当用户尝试添加新字段(这是非常常见的)时,就会发送一个触发长时间运行查询的请求(5-10秒)。如果用户连续添加5,则可能需要60秒才能获得正确的查询值。
我想在每次收到连续请求时终止当前的AJAX请求和数据库查询。 Zend中是否有一种方法可以跟踪该查询并在收到连续的ajax请求时将其终止?
让您了解我目前正在使用的内容 -
$db = Zend_Registry::get('database');
$select = 'SELECT get_Query(' . $this->client_id ')';
$data = $db->query($select)->fetchAll();
return $data;
答案 0 :(得分:1)
根据this article,您可以在ps -ef
的输出中搜索状态为“在交易中空闲”的postgres查询,并使用kill
这将需要使用exec()
或类似的函数来执行系统命令。