Laravel和干预图像缓存生成太多查询(每个图像1个查询)

时间:2016-07-28 13:26:54

标签: php laravel laravel-5 intervention

我使用带有干预Imagecache的Laravel 5.1

我正在写商店,产品页面有很多图片。我正在使用URL-based manipulation(例如,访问http://store.app/image/255x135/some-image.jpg生成一个255x135版本的some-image.jpg)来调整图片大小。 但是,加载图像后,Laravel会生成一个检查用户的查询(从users中选择* usersid =?limit 1)

问题是每次访问Laravel中的任何路由时都会生成此查询,包括干预Imagecache路由,当页面使用Intervention加载20-30个图像时,将对每个图像执行上述用户检查SQL查询(在这20-30次)。

当我试图找出问题时,我注意到这个查询是为Laravel中的每一条路线生成的,即使是一个简单的测试路线,换句话说,问题不在于Intervention Imagecache本身。

我目前正试图在干预路线上禁用用户检查查询,但我还没有成功。

我的两个问题是:

  1. 是否可以针对特定路线禁用用户检查查询?
  2. 是否有解决此图像查询问题的方法(除了调整图像大小并将其保存到文件系统 - 换句话说放弃基于URL的操作)?
  3. 修改

    起初我用DB :: listen()进行调试,显示正在执行多个查询(每次访问的干预路由都有1个查询)

    我刚刚安装并检查了Clockwork会显示什么,它确实只显示了1个查询(不是多个查询,因此Clockwork说一切正常)。

    我不确定这些冲突结果中哪一个是真的,所以我直接从MySQL本身记录了查询 - 遗憾的是它显示了许多(与DB :: listen记录相同的数量)查询被执行(发条只显示1,但实际执行了几个)。

    问题仍然存在,我们将非常感谢任何帮助。

0 个答案:

没有答案