Cache
Cache
O AppKit oferece recursos de cache tanto no nível global quanto no nível de plugin.
Configuração global do cache
await createApp({
plugins: [server(), analytics({})],
cache: {
enabled: true,
ttl: 3600, // segundos
strictPersistence: false,
},
});O armazenamento seleciona automaticamente o cache persistente do Lakebase Autoscaling quando ele está íntegro; caso contrário, recorre ao cache em memória.
O cache baseado em banco de dados exige as mesmas variáveis de ambiente do Lakebase que o plugin do Lakebase (PGHOST, PGDATABASE, LAKEBASE_ENDPOINT, PGSSLMODE).
Cache no nível do plugin
Dentro de uma subclasse de Plugin:
const value = await this.cache.getOrExecute(
["myPlugin", "data", userId],
async () => expensiveWork(),
userKey,
{ ttl: 300 },
);