我试图想出一种策略方法来收集大量的usermeta数据(并输出到屏幕上),同时保持数据库查询的低水平。有些页面,如主页、单页和类别页,在不到半秒的时间内加载了40-60个查询。其他包含大量usermeta的页面在5-6秒内加载,有200-220个查询。
是否有一种“最佳实践”方法,在网站加载(或第一次加载网站)之前,以某种方式提取所有用户数据,然后访问该信息(IE,基于用户ID的多维数组),以满足网站上所有其他基于用户的查询?信息是在访问时保存(在浏览器上缓存),还是需要使用临时api?
有什么想法吗?
发布于 2014-03-07 20:24:54
你在这里做了很多陈述,所以让我们一点一点地看一遍。
同时保持数据库查询低
查询的数量不是直接的问题,它们所花费的时间是。单个非常慢的查询可能比数百个非常快的查询花费更多的时间。
在网站加载之前(或网站第一次加载)
因为WP是PHP应用程序,所以每个负载都包含完整的周期,并且不是持久的。没有“第一次”,因为它是从零开始的每一个负载。唯一的持久部分是那些保存到数据库或其他。
信息是在访问时保存(在浏览器上缓存),还是需要使用临时api?
浏览器缓存虽然很重要,但无助于提高站点本身的性能。瞬变恰恰是一种适合于这种用例的持久存储。
但是,与通常的性能任务一样,如果不分析缓慢的操作,很难推荐任何东西。对于性能缓慢和浪费时间试图解决这些问题的原因,做出错误的假设是极其容易的。
https://wordpress.stackexchange.com/questions/137238
复制相似问题