是否值得缓存 WordPress 特定查询?

Is it worth caching WordPress specific Queries?

当用户访问我的主页时,我有多个特定于 wordpress 的查询被触发。我可以让 150 多个用户同时访问,其中可能有 25 个以上的用户访问了主页。

这是一个查询的示例:

 $args = array(
'posts_per_page' => 3,
'post_status' => 'publish',
'category' => 37,
'meta_key' => 'total_views',
'orderby' => 'meta_value_num', 
'order' => 'DESC',
    'date_query' => array(
        array(
            'after' => '1 month ago'
        )
    )


);

我在主页上有大约 6 个这样的查询(以及类似的查询)。

我最近一直在网站的大部分区域实施 phpfastcache,并且在大多数情况下效果非常好(尤其是在降低进入流程限制方面)。

我确实听说 wordpress 查询通常优化得很好,通常 no point in caching them

这对我来说仍然适用吗?

编辑:

缓存次数:

1 个查询被缓存 10 分钟。

2 个查询每个缓存 60 秒(它们是 "here is a recently updated section" 的一部分)。理论上我可以稍微增加一点。

其余缓存半天(可能会增加到一两天)。

老实说,这是个案研究。 当您的磁盘不是 SSD 或基于闪存的磁盘(假设您使用 "Files" 驱动程序)时,缓存会降低性能。

但大多数时候使用基于内存的驱动程序(SSDB、Redis、Memcache 等),您会注意到性能提升,特别是对于 SQL 不使用索引(或部分使用索引)的查询其中)。

我曾在多个 php CMS 上工作过,例如 Drupal、Wordpress、Prestashop 等,老实说,配置良好的缓存对您的网站来说是不可忽视的提升,尤其是在使用单独的缓存时基于支持的 kv。

为了完成简单的一行,当不确定时,我首先对有和没有缓存的内容列表进行近似基准测试(通常使用浏览器调试器)。如果性能提升几乎不明显,我通常会继续对整个页面进行 microtime 测试。

免责声明:我是 Phpfastcache 的所有者。