キャッシュバックエンドオプションとストレージリファレンス

Commerce アプリケーションでは、低レベルのキャッシュフロントエンドとバックエンドを使用して、キャッシュストレージへのアクセスを提供します。 Commerceは、複数のキャッシングバックエンドと戦略をサポートしており、それぞれ異なるユースケースに適しています。 このページでは、使用可能なバックエンドとその違いについて説明します。

NOTE
フロントエンドキャッシュ設定について詳しくは、​ キャッシュフロントエンドの設定を参照してください。

バックエンドキャッシュオプション

次の表に、使用可能なバックエンドキャッシュの概要を示します。

バックエンド
説明
設定ガイド
ファイルシステム
デフォルト: キャッシュデータをvar/cache/の下のファイルに保存します。 設定は必要ありません。
該当なし
Redis
高性能なキャッシュを実現するインメモリデータストア。
​ デフォルトのキャッシュにRedisを使用
Valkey
オープンソースのRedis互換の代替手段。
既定のキャッシュにValkeyを使用
​ データベース ​
データベースに裏打ちされたキャッシュ:
​ カスタムキャッシュエンジンの作成 (Adobe開発者向けドキュメント)
NOTE
Varnishは、HTTP レベルでページ全体キャッシュを処理し、低レベルのキャッシュバックエンドを使用しません。

導入アプローチ

Commerceは、バックエンドの実装アプローチを2つサポートしています。 Commerceのバージョンによって、最適なアプローチを選択できます。

従来のZend ベースのキャッシュ (2.4.8以前)

バックエンド設定にフルクラス名を使用します。

table 0-row-2 1-row-2 2-row-2
バックエンド クラス名
Redis Magento\Framework\Cache\Backend\Redis
バルキー Magento\Framework\Cache\Backend\Valkey

これらはZend_Cache_Backend インターフェイスと互換性があります。

設定例:

code language-php?start_inline=1
'backend' => 'Magento\\Framework\\Cache\\Backend\\Redis',
'backend_options' => [
    'server' => '127.0.0.1',
    'database' => '0',
    'port' => '6379',
],
最新のSymfony キャッシュ (2.4.9以降、推奨)
note tip
TIP
最新のSymfony Cache実装は、PSR-6 コンプライアンス、Igbinary シリアル化、gzip圧縮、Lua スクリプト、および永続的な接続を通じて、より優れたパフォーマンスを提供します。

簡略化されたバックエンドタイプ名を使用:

table 0-row-2 1-row-2 2-row-2 3-row-2
バックエンド タイプ名
Redis redis
バルキー valkey
ファイルシステム file

設定例:

code language-php?start_inline=1
'backend' => 'redis',
'backend_options' => [
    'server' => '127.0.0.1',
    'database' => '0',
    'port' => '6379',
    'serializer' => 'igbinary',
    'compression_lib' => 'gzip',
],

設定オプションの詳細については、次を参照してください。

従来のZend ベースのオプションについては、Laminas ドキュメント ​を参照してください。

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