derhasi/cache_split

此包已被废弃且不再维护。作者建议使用 drupal/cache_split 包代替。

安装次数: 1,975

依赖项: 0

建议者: 0

安全性: 0

星标: 0

关注者: 1

分支: 0

开放性问题: 0

类型:drupal-module

1.0.0-alpha1 2017-03-08 10:24 UTC

This package is not auto-updated.

Last update: 2019-02-20 19:10:11 UTC


README

该模块为Drupal提供缓存后端,可以将单个bin的缓存项拆分为单独的后端。

安装

  1. 下载 cache_split 模块或通过 Composer 添加
  2. 启用 cache_split 模块(例如 drush en cache_split
  3. 在您的 settings.php 中更改bin的缓存后端(例如 render
<?php
$settings['cache']['bins']['render'] = 'cache.backend.split';
?>
  1. settings.php 中添加bin的拆分配置
<?php
$settings['cache_split']['render'] = [
  //..
];

详细信息请参阅下面的 配置

配置

必须在 settings.php 中定义缓存bin的配置

<?php
$settings['cache_split']['NAME_OF_CACHE_BIN'] = [
  //..
];

匹配器定义

每个bin可以包含多个匹配器定义,每个定义可能包含以下内容

  • backend: 要使用的缓存后端服务名称(例如 cache.backend.database)。如果未指定,则默认为定义的键。
  • includes: 应用于此后端的所有cid模式数组。如果为空,则包含所有cid(除非由 excludes 排除)。
  • excludes: 不应用于此后端的所有cid模式数组

通配符语法

cid模式可以使用 * 匹配任意数量的任意字符。

后备缓存后端

可以通过简单地省略 includesexcludes 或将它们留空来定义后备后端。

确保后备后端是最后定义的,以便考虑其他定义。

如果没有指定后备后端,则将 cache.backend.database 设置为默认。

示例

<?php
$settings['cache_split'] = [
  // Splits render cache in multiple backends.
  'render' => [
    // Do not cache render results for paragraphs, as they are only rendered in
    // context of the host entity.
    [
      'backend' => 'cache.backend.null',
      'includes' => [
        'entity_view:paragraph:*'
      ],
      'excludes' => [],
    ],
    // Falls back to database backend.
    [
      'backend' => 'cache.backend.database',
    ],
  ],
];
?>