【问题标题】:Magento - huge number of db queries x pageMagento - 大量的数据库查询 x 页
【发布时间】:2012-08-03 15:07:32
【问题描述】:

我想知道在标准安装的目录页面的 magento 中正确的平均数据库查询数是多少,因为我认为我的页面存在很大问题。

我的目录页面有大约 2000 个查询!这太多了,我认为这就是我的页面如此缓慢的原因。

此外,如果你打开magento工具栏(右上角)并打开查询表,你可以看到更多的查询被执行了很多次,查询如下:

SELECT `eav_attribute_set`.* FROM `eav_attribute_set` WHERE (eav_attribute_set.attribute_set_id='10') 

而且它似乎是一个循环。

现在我必须找出问题所在,可能是一些错误的扩展或错误的自定义代码,但是对于目录页面的正确查询数量可能是多少?

【问题讨论】:

  • 建议删除链接,如果它确实在每次页面加载时执行那么多查询。你不希望你的服务器宕机吧?
  • 不!请! :) 但这是一个临时服务器....你知道有多少查询是正确的平均值吗?所以我有一个大问题:(
  • 我在全新 Enterprise 安装的目录产品列表页面上进行了测试,产生了大约 80 个查询。所以有很大的不同。您可能想要转到Varien_Db_Adapter_Pdo_Mysql 并将以下变量设置为true$_debug$_logAllQueries$_logCallStack。尤其是最后一个$_logCallStack 可能会派上用场。它记录触发查询的那些方法的回溯。日志文件可以在/var/debug/下找到。
  • @D.Milito 只是为了澄清 - 我没有威胁! - 我在建议:)
  • 您应该查看 id 为 10 的属性集。可能是产品,但我不这么认为。我认为某些扩展程序编码错误并进行了许多 ->load() 调用,因此触发了许多查询。

标签: sql magento catalog


【解决方案1】:

Tim Hofman 的回答(安装了 wee-developer 工具栏)对于了解在我之前的开发人员编码错误的查询非常有用。

几乎所有这些查询都是 load() 以在只需要一个产品的属性时检索完整的产品,所以我编辑了代码。

感谢您的回复! :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-12
    • 2015-12-17
    相关资源
    最近更新 更多