我不是专业的程序员所以我不能确定这一点.你的脚本在一个页面上发送了多少个mysql查询以及你的最佳查询号码.例如,在stackoverflow的主页上,它列出的问题显示了这些问题的作者.stackoverflow发送mysql查询foreach问题以获取作者的信息.或者它发送1个查询并获取所有用户数据并将其与问题相匹配?
我想把我的比赛保持在8岁以下.
但说真的,这是毫无意义的.假设您有理由在页面中有800个查询,那么您可以继续执行此操作.您可能会发现每页的查询数量仅取决于您正在做的事情,但在正常情况下我会惊讶地看到超过50(尽管这些日子,很难意识到有多少如果你抽出你的数据库电话,那你正在做的事情).
慢查询更重要
我曾经对某个基于PHP的论坛软件感到沮丧,该软件在一个页面中有35个查询并且运行速度非常慢,但那是很久以前我现在知道特定安装运行缓慢的原因与35没有任何关系页面中的查询.例如,这些查询中只有一个或两个占用了大部分时间.它只有几个非常慢的查询,这些查询是通过良好放置的索引修复的.
我认为识别和修复慢速查询应该在识别和消除不必要的查询之前,因为它可能会产生更大的差异.
甚至考虑三个快速查询可能比一个慢查询快得多 - 查询数量不一定与速度有关.
我有一个页面(实际上是一种设计为仅由管理员运行的测试用例/诊断工具),它有超过800个查询,但它在几秒钟内运行.我猜他们都是非常简单的查询.
尝试缓存
缓存部分应用程序有多种方法可以真正减少您执行的查询数量,而不会降低功能.像memcached这样的库让这些日子变得简单易行,但运行得非常快.与减少查询数量相比,这还可以帮助提高性能.
如果查询确实是不必要的,并且性能确实有所作为,那么删除/组合它们
首先考虑寻找慢查询并优化它们,或者缓存它们的结果.