我希望你们不会介意我问一个离题和天真的问题。但是,我找不到任何令人满意的答案。最大限度,一个页面平均必须处理多少个查询才能呈现输出(我正在寻找质量方面)。例如,在电子商务应用程序中,平均需要4到5个查询。查询次数最少,响应时间较短。这就是问题所在。这个问题与任何编程平台无关。但是,让我们以PHP和MySql为例。
发布于 2016-11-10 08:58:51
一个需要半秒执行的复杂查询不如运行5个简单查询(总共需要1/10秒钟才能完成)更优。
拥有更多的简单查询可能也是一种权衡,以保持您的代码更有组织。例如,与手动编写查询时相比,ORMs通常会发出更多的数据库调用,但它们使应用程序的开发变得非常简单。
然而,最终,任何复杂到需要担心数据库调用数量的应用程序都是非常复杂的,因此它应该尽可能地使用缓存层。只要没有需要长时间加载的页面,就不值得挑剔查询的确切数量。
发布于 2016-11-10 08:32:44
实际上,很难说有多少查询,一个页面必须触发。这取决于下列因素:
应用的复杂性
与普通网页相比,在一个大的、复杂的、面向数据的应用程序中,显示在网页中的数据在数量上是很大的。因此,它可能需要您触发更多的查询来获取数据。
查询类型
您可以选择触发更多查询来获取单个数据,或者可以使用复杂的连接一次从多个表中获取所有数据。因此,在这里,你是在“不”之间进行权衡。对于db调用与处理和内存量的关系,复杂连接需要。如果要加入的表不是很大,那么联接是最好的选择。但是,如果您的表很大,那么对db进行单独调用以获取数据可能更有意义。
部署配置
如果在同一台计算机上配置了应用程序服务器和db服务器,那么进行多个查询可能没有多大意义。但是,如果您的db服务器和应用程序服务器位于不同的位置,则必须使用最小的查询或必须使用具有更多联接的单个查询,以避免网络延迟。
发布于 2016-11-13 21:24:44
我已经开发了许多网页,每页多达50个查询。一切都是可以接受的快速。关键不是“查询的数量”,而是它们的“速度”。在最好的情况下,查询需要10毫秒以下。其中有50个还不到半秒。在这样的页面中,呈现页面可能要花费更长的时间。也就是说,MySQL不是瓶颈。
如何加快查询速度?简单的查询。点查询。好的索引(通常是‘复合’)。
如何减缓查询速度?伊夫。“在123456的结果中显示了10个结果”。桌子扫描。
想知道更多细节吗?让我们看看一些问题。
https://stackoverflow.com/questions/40522884
复制相似问题