[内部部署]{class="badge informative" title="仅适用于Adobe Commerce本地项目。"}

缓存后端选项和存储参考

NOTE
此页面记录本地app/etc/env.php配置。
对于Adobe Commerce on Cloud项目,ece-tools包在部署期间根据.magento.env.yaml中的部署变量配置生成结果app/etc/env.php配置。 您不编辑env.php文件。 查看Valkey和Redis服务配置的最佳实践部署变量

Commerce应用程序使用低级缓存前端和后端来提供对缓存存储的访问。 Commerce支持多种缓存后端和策略,每种后端和策略都适用于不同的用例。 本页介绍可用的后端及其差异。

NOTE
Varnish在HTTP级别处理内部部署的整页缓存。 Fastly服务为云部署处理它。 这两种解决方案都未使用低级缓存后端。

后端缓存选项

下表汇总了可用的后端缓存:

后端
描述
配置指南
文件系统
默认。 将缓存数据存储在var/cache/下的文件中。 无需配置。
不适用
Redis
用于高性能缓存的内存中数据存储。
对默认缓存使用Redis
Valkey
开源、与Redis兼容的替代方案。
对默认缓存使用Valkey
数据库
由数据库支持的自定义缓存引擎
创建自定义缓存引擎 (Adobe Developer文档)
IMPORTANT
Adobe Commerce 2.4.9或更高版本的2.4.5-p16、2.4.6-p14、2.4.7-p9和2.4.8-p4修补程序不支持Redis缓存。 如果您要升级到其中一个版本,请配置Valkey并更新缓存配置以使用它。 有关Adobe Commerce on-premises,请参阅设置Valkey

缓存后端和L2实施 implementation-approaches

Commerce支持直接缓存后端和L2缓存。 直接后端选择缓存存储。 二级缓存在远程存储前添加了一个本地缓存层。

直接缓存后端

下表汇总了<Commerce-install-dir>/app/etc/env.php的缓存后端配置值。 它不会启用L2缓存。

Commerce版本
后端
配置值
2.4.8及更早版本,如果支持
文件
默认。 无需配置
2.4.8及更早版本,如果支持
Redis
Magento\Framework\Cache\Backend\Redis
2.4.8及更早版本,如果支持
Valkey
Magento\Framework\Cache\Backend\Valkey
2.4.9及更高版本,以及支持的后端端口
文件
file
2.4.9及更高版本,以及支持的后端端口
Valkey
valkey

有关修补程序级别的准确支持,请参阅系统要求

[!TAB 基于Zend的缓存(2.4.8及更早版本)]

后端示例

对于内部部署,以下示例在<Commerce-install-dir>/app/etc/env.php中配置直接缓存后端。 它们不会启用L2缓存。 请勿对Adobe Commerce on Cloud部署使用这些示例,部署期间使用ece-tools包生成生成的app/etc/env.php配置。

红色

仅在支持Redis的版本上使用完整的Redis类名称:

code language-php?start_inline=1
'cache' => [
    'frontend' => [
        'default' => [
            'backend' => 'Magento\\Framework\\Cache\\Backend\\Redis',
            'backend_options' => [
                'server' => '127.0.0.1',
                'database' => '0',
                'port' => '6379',
            ],
        ],
    ],
],
Valkey
code language-php?start_inline=1
'cache' => [
    'frontend' => [
        'default' => [
            'backend' => 'valkey',
            'backend_options' => [
                'server' => '127.0.0.1',
                'database' => '0',
                'port' => '6379',
            ],
        ],
    ],
],

L2缓存

二级缓存(L2)在共享远程缓存存储前面的每个Web节点上添加了一个本地缓存层,从而减少了Commerce和远程缓存之间的网络流量。 有关实施选项、版本支持和配置步骤,请参阅二级缓存配置

对于云项目,请通过部署变量中描述的部署变量配置L2缓存。

recommendation-more-help
commerce-operations-help-configuration