FOSRestBundle工作正常,但每当我尝试返回大型JSONArray,包含50,000条或更多条记录时,客户端需要超过5分钟并超时。
这是我的控制器
use FOS\RestBundle\Controller\FOSRestController;
use FOS\RestBundle\Routing\ClassResourceInterface;
class ProductController extends FOSRestController implements ClassResourceInterface {
public function cgetAction(){
$data = $this->getDoctrine()->getRepository('MyApiBundle:Product')->findAll();
$view = $this->view($data);
return $this->handleView($view);
}
}
这是我的config.yml
fos_rest:
param_fetcher_listener: true
body_listener: true
format_listener: true
view:
view_response_listener: 'force'
default_engine: php
更新1:每当我从实体中删除关系时,一切正常。
答案 0 :(得分:1)
如果您向客户提供可视化数据,那么返回超过可读数量的记录是没有意义的。您总是希望在客户端和服务器端对数据进行分页以限制负载。