当前位置:首页>WordPress资讯>WordPress 6.0 中的缓存改进

WordPress 6.0 中的缓存改进

WordPress 主题 CoreNext

作为 WordPress 6.0 发布的一部分,新的性能团队一直致力于对核心性能改进。现在,WordPress 缓存API有一些新增功能。

缓存操作的批处理 API 方法 ( wp_cache_*_multiple)

wp_cache_get_multiple()功能是在 WordPress 5.5 中添加的。这允许在一个请求中收集多个缓存键。为了完成这个 API,需要一个完整的CRUD,并通过以下函数添加:

  • wp_cache_add_multiple
  • wp_cache_set_multiple
  • wp_cache_delete_multiple

所有这些函数都接受要传递的数据数组,以便可以在单个缓存调用中创建、编辑或删除多个缓存对象。

在 WordPress 核心中,这些只是核心函数的包装器,允许在一个函数调用中传递多个键,但这也允许对象缓存插件开发人员在后端支持的情况下实现它们。

wp_cache_add_multiple( $data, $group = '', $expire = 0 ) 的用法示例

  • $data:要添加的键值对数组。
  • $group: 可选,字符串。缓存内容的分组位置。默认 ”。
  • $expire: 可选,整数。缓存何时到期(以秒为单位)。默认 0(无过期)。
wp_cache_add_multiple( array( 'foo1' => 'value1', 'foo2' => 'value2' ), 'group1' );

wp_cache_delete_multiple( $data, $group = '' )用法示例

  • $data:要删除的键数组。
  • $group: 可选,字符串。缓存内容的分组位置。默认 ”。
wp_cache_delete_multiple( array( 'foo1', 'foo2' ), 'group1' );

wp_cache_set_multiple( $data, $group = '', $expire = 0 ) 的用法示例

  • $data:要设置的键值对数组。
  • $group: 可选,字符串。缓存内容的分组位置。默认 ”。
  • $expire: 可选,整数。缓存何时到期(以秒为单位)。默认 0(无过期)。
wp_cache_set_multiple( array( 'foo1' => 'value1', 'foo2' => 'value2' ), 'group1' );

通过这些添加,已经进行了一些额外的核心重构以利用这些新功能。请参阅Trac #55029中的更多详细信息。

允许刷新运行时间缓存 ( wp_cache_flush_runtime)

正如性能问题#81和 Trac #55080中所讨论的,WordPress核心需要一种方法来允许用户刷新运行时间 runtime (内存中)缓存而不刷新整个持久缓存。

在运行长时间需要运行的进程(如 Action Scheduler 或WP-CLI )的情况下,经常需要此功能。

 wp_cache_flush_runtime()的用法示例

$counter = 0;
foreach ( $posts as $post ) {
    wp_insert_post( $post );
    if ( 100 === $counter ) {
        wp_cache_flush_runtime();
        $counter = 0;
    } 
    $counter++;
}

上面的示例会在将 100 个文章插入数据库后重置运行时间缓存。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
欢迎关注WordPress大学公众号 WPDAXUE
WordPress开发WordPress资讯

WordPress 6.0 新增过滤器允许修改文章内容中的图片输出

2022-4-30 11:45:51

WordPress资讯

Gutenberg 13.2 添加了持久用户首选项,并为边距和填充控件添加可视化设置

2022-5-13 12:00:36

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索