用户浏览器和apache2服务器之间的连接存在很大问题。我们要处理大量数据,因此请求需要更多时间,客户端必须等待响应超过几分钟。它运作良好一个月..然后它开始打破连接(或类似的东西)。
每次连接在6分钟后关闭。 Chrome浏览器会抛出ERR_EMPTY_RESPONSE
。 DHC显示No response
和No content
。在apache error.log
中,日志级别设置为debug,没有什么,在symfony中运行tail -f dev.log
我可以看到,该脚本仍在运行..直到最后,没有错误。
奇怪的是,当我从Windows运行脚本时,连接失败的时间不是6分钟而是12分。当我在Mac上通过浏览器运行2个不同的请求时,我有12分钟。
2天的调试没什么。甚至没有一行日志。
我在哪里可以看下一个?网络日志?也许有人有同样的问题?
答案 0 :(得分:0)
没有找到理由,但答案是流式响应+ JSON。如果有回复,连接就不会中断。
这为调试(实时内存使用)提供了强大的工具,并向我展示了问题是内存(当存储太多对象时,理论中的Enity Manager非常低)。
顺便说一下,与Doctrine $em->clear()
合作的很酷的方式。
foreach ($items as $item) {
$item = $this->em->getReference('AppBundle:Item',$item->getId());
.......
$em->flush();
$em->clear();
}
很酷,因为你不需要分离与$item
相关的对象,只需完全清除并附上它。工作得非常快。