Data API ビルダーのレベル 1 キャッシュは、エンティティの結果をメモリに一時的にキャッシュすることで、データベースへの冗長な要求を減らします。 このキャッシュにより、頻繁なクエリのパフォーマンスが向上し、データベースが不必要にヒットすることを回避できます。
キャッシュをグローバルに有効にする
キャッシュを有効にするには、グローバル ランタイム構成を設定します。
"runtime": {
"cache": {
"enabled": true,
"ttl-seconds": 60
}
}
-
enabled: 必須。 グローバルにキャッシュを有効にします。 -
ttl-seconds: 省略可能。 キャッシュされた項目の既定の有効期間 (秒単位) を定義します。
ランタイム キャッシュの設定を参照してください。
エンティティごとのキャッシュを有効にする
各エンティティは、キャッシュの使用をオプトインする必要もあります。
"MyEntity": {
"cache": {
"enabled": true,
"ttl-seconds": 30,
"level": "L1"
}
}
-
enabled: 必須。 この特定のエンティティのキャッシュを有効にします。 -
ttl-seconds: 省略可能。 指定しない場合は、グローバルな有効期間 (TTL) 値を継承します。 -
level: 省略可能。 使用するキャッシュ層を制御します。L1はメモリ内キャッシュのみを使用します。L1L2(既定) では、メモリ内キャッシュと分散キャッシュの両方が使用されます。
エンティティ キャッシュの設定を参照してください。
注
このセクションで説明する Data API Builder 2.0 の機能は現在プレビュー段階であり、一般公開前に変更される可能性があります。 詳細については、「 バージョン 2.0 の新機能」を参照してください。
Behavior
- REST エンドポイントにのみ適用されます。
- ルートごと、パラメーター単位で動作します。
- データが変更されるとキャッシュは無効になります (作成、更新、削除)。
- エンティティ
ttl-secondsはグローバルttl-secondsをオーバーライドします。
Notes
- レベル 1 のキャッシュはメモリ内のみです。
- データのボラティリティが低い読み取り負荷の高いシナリオに最適です。