symfony 3.4 FirewallListener 慢/阻塞

dev*_*lth 1 php mysql symfony

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

我激活了 Profiler 并识别出 FirewallListener 是阻塞元素)。

Profiler 屏幕截图(加载巨大,切换标签 - 加载正常) 巨大 巨大的页面加载

普通的 正常页面加载

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

Connection took 9.9890232086182 ms
Query took 3.3938884735107 ms
Run Code Online (Sandbox Code Playgroud)

所以这不是阻塞。

关于如何解决这个问题的任何想法?

设置:

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

alb*_*ert 5

它被 PHP Session 阻止了。

您无法向需要访问相同会话 ID 的页面提供服务。

尽管在慢速页面上关闭/提供/释放会话后,可以在同一会话上提供另一个页面。在慢速页面上,请Session::save()尽快在您的控制器上调用。这将释放会话。考虑到您在保存会话后所做的一切都不会存储在会话中。