Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php symfony 3.4 FirewallListener慢速/阻塞_Php_Mysql_Symfony - Fatal编程技术网

Php symfony 3.4 FirewallListener慢速/阻塞

Php symfony 3.4 FirewallListener慢速/阻塞,php,mysql,symfony,Php,Mysql,Symfony,当我请求一个包含大量数据的“巨大”页面,并向“正常”内容页面发出第二个请求时,正常页面会被阻止,直到“巨大”页面被加载 我激活了探查器,并认识到FirewallListener是阻塞元素) 探查器屏幕截图(加载巨大,切换选项卡-加载正常) 巨大的 正常 加载“巨大”页面时,我在cli上执行了一个mysql php请求,并进行了一些时间测量: Connection took 9.9890232086182 ms Query took 3.3938884735107 ms 所以这不是阻塞 有没

当我请求一个包含大量数据的“巨大”页面,并向“正常”内容页面发出第二个请求时,正常页面会被阻止,直到“巨大”页面被加载

我激活了探查器,并认识到FirewallListener是阻塞元素)

探查器屏幕截图(加载巨大,切换选项卡-加载正常) 巨大的

正常

加载“巨大”页面时,我在cli上执行了一个mysql php请求,并进行了一些时间测量:

Connection took 9.9890232086182 ms
Query took 3.3938884735107 ms
所以这不是阻塞

有没有办法解决这个问题

设置:

  • php-fpm7.2
  • nginx
  • symfony3.4

    • 防火墙花费如此长时间的原因是启用了调试

      在调试中,侦听器都是用调试侦听器包装的正在分析和记录防火墙中的所有信息


      尝试在禁用Symfony debug的情况下运行相同的请求。

      防火墙花费如此长时间的原因是启用了调试

      在调试中,侦听器都是用调试侦听器包装的正在分析和记录防火墙中的所有信息


      尝试在禁用Symfony调试的情况下运行相同的请求。

      它已被PHP会话阻止

      您不能服务于需要访问相同会话id的页面


      虽然在慢速页面上关闭/服务/释放会话后,可以在同一会话上服务另一个页面。在慢速页面上,只需在控制器上尽快呼叫即可。这将释放会话。请注意,保存会话后所做的一切都不会存储在会话中。

      它已被PHP会话阻止

      您不能服务于需要访问相同会话id的页面


      虽然在慢速页面上关闭/服务/释放会话后,可以在同一会话上服务另一个页面。在慢速页面上,只需在控制器上尽快呼叫即可。这将释放会话。请注意,保存会话后所做的一切都不会存储在会话中。

      我们遇到了类似的问题。在短时间内向服务器发送两个连续请求时,服务器变得非常慢。我启用了探查器栏,ContextListener花费了很多时间

      问题是我们服务器上的文件服务器访问速度非常慢,会话信息存储在文件系统中,这是symfony的默认设置


      我将我的应用程序配置为使用,问题就消失了。

      我们也遇到了类似的问题。在短时间内向服务器发送两个连续请求时,服务器变得非常慢。我启用了探查器栏,ContextListener花费了很多时间

      问题是我们服务器上的文件服务器访问速度非常慢,会话信息存储在文件系统中,这是symfony的默认设置


      我将我的应用程序配置为使用,问题消失了。

      我建议尝试使用以获取有关请求内部的更详细信息在防火墙内,Contextlistener是该blocks,我建议尝试使用以获取有关请求内部的更详细信息在防火墙内,Contextlistener是该blocks!因此,当加载一个需要会话的页面时,如果另一个页面(不需要会话)是同一个会话,则无法同时加载该页面。防火墙内的Dall Symfony URL需要该会话,以便加载令牌/用户并验证是否允许该令牌/用户访问当前防火墙。有些情况下,这不适用,但这不是通常的情况。谢谢!因此,当加载一个需要会话的页面时,如果另一个页面(不需要会话)是同一个会话,则无法同时加载该页面。防火墙内的Dall Symfony URL需要该会话,以便加载令牌/用户并验证是否允许该令牌/用户访问当前防火墙。有些情况不适用,但这不是通常的情况。你能解释为什么会这样吗?你能解释为什么会这样吗?