キャッシュ
キャッシュ
AppKit は、グローバルレベルと plugin レベルの両方でキャッシュ機能を提供します。
グローバルキャッシュ設定
await createApp({
plugins: [server(), analytics({})],
cache: {
enabled: true,
ttl: 3600, // 秒
strictPersistence: false,
},
});ストレージは、Lakebase Autoscaling の永続キャッシュが正常であればそれを自動選択し、利用できない場合はインメモリにフォールバックします。
データベースベースのキャッシュには、Lakebase plugin と同じ Lakebase 環境変数 (PGHOST、PGDATABASE、LAKEBASE_ENDPOINT、PGSSLMODE) が必要です。
pluginレベルのキャッシュ
Plugin のサブクラス内では次のようにします:
const value = await this.cache.getOrExecute(
["myPlugin", "data", userId],
async () => expensiveWork(),
userKey,
{ ttl: 300 },
);