【发布时间】:2017-06-07 08:00:41
【问题描述】:
我在用户浏览器和 apache2 服务器之间的连接上有很大的问题。我们要处理大量数据,因此请求需要更多时间,客户端必须等待响应超过几分钟。它运行了一个月......然后它开始断开连接(或类似的东西)。
每次连接在 6 分钟后关闭。 Chrome 浏览器会抛出一个ERR_EMPTY_RESPONSE。 DHC 显示No response 和No content。在 apache error.log 中,日志级别设置为调试,什么都没有,在 symfony 中运行 tail -f dev.log 我可以看到,该脚本仍在运行.. 直到最后,没有错误。
奇怪的是,当我从 Windows 运行脚本时,连接不是在 6 分钟后而是在 12 分钟后断开。当我在 Mac 上通过浏览器运行 2 个不同的请求时,我有 12 分钟的时间。
调试了 2 天,一无所获。连一行日志都没有。
接下来我可以去哪里看?网络日志?也许有人有同样的问题?
【问题讨论】:
-
您的脚本不适合在浏览器中启动。您应该使用命令。
-
我知道,它将在 RabbitMQ 上进行优化和构建。但现在我们没有时间去做。那不能是命令服务,最终用户必须运行它。它甚至适用于 2 小时的请求。现在它无法处理 6 分钟。
-
没时间?将脚本/控制器传输到命令只需 5 分钟。 symfony.com/doc/current/console.html 此外,使用命令将允许您添加调试消息、监控内存等。
-
正如我所说,这是并且必须是用户界面的一个组件。现在我运行命令或请求并不重要,因为脚本也以这种方式运行良好,但是连接中断并且用户不知道该过程是否完成。我可以告诉用户它是否已经完成,我会一直优化它,这不是一个大问题,但我想知道是什么导致了这个问题......
-
是的,这是一个问题,因为您不会遇到命令问题。