Almacen Clave-Valor

Almacenamiento clave-valor rapido con soporte de TTL. Ideal para cache, sesiones y estado temporal.

Para configuración del almacen, consulte Almacen.

Carga

local store = require("store")

Adquirir un Almacen

Obtener un recurso de almacen por ID de registro:

local cache, err = store.get("app:cache")
if err then
    return nil, err
end

cache:set("user:123", {name = "Alice"}, 3600)
local user = cache:get("user:123")

cache:release()
Parámetro Tipo Descripción
id string ID de recurso del almacen

Devuelve: Store, error

Almacenar Valores

Almacenar un valor con TTL opcional:

local cache = store.get("app:cache")

-- Set simple
cache:set("user:123:name", "Alice")

-- Set con TTL (expira en 300 segundos)
cache:set("session:abc", {user_id = 123, role = "admin"}, 300)
Parámetro Tipo Descripción
key string Clave
value any Valor (tablas, strings, numeros, booleanos)
ttl number TTL en segundos (opcional, 0 = sin expiracion)

Devuelve: boolean, error

Recuperar Valores

Obtener un valor por clave:

local user = cache:get("user:123")
if not user then
    -- Clave no encontrada o expirada
end
Parámetro Tipo Descripción
key string Clave a recuperar

Devuelve: any, error

Devuelve nil si la clave no existe.

Verificar Existencia

Verificar si una clave existe sin recuperar:

if cache:has("lock:" .. resource_id) then
    return nil, errors.new("CONFLICT", "Resource is locked")
end
Parámetro Tipo Descripción
key string Clave a verificar

Devuelve: boolean, error

Eliminar Claves

Eliminar una clave del almacen:

cache:delete("session:" .. session_id)
Parámetro Tipo Descripción
key string Clave a eliminar

Devuelve: boolean, error

Devuelve true si se elimino, false si la clave no existia.

Metodos de Store

Método Devuelve Descripción
get(key) any, error Recuperar valor por clave
set(key, value, ttl?) boolean, error Almacenar valor con TTL opcional
has(key) boolean, error Verificar si clave existe
delete(key) boolean, error Eliminar clave
release() boolean Liberar almacen de vuelta al pool

Permisos

Las operaciones de almacen estan sujetas a evaluacion de politica de seguridad.

Accion Recurso Atributos Descripción
store.get ID de Store - Adquirir un recurso de almacen
store.key.get ID de Store key Leer valor de una clave
store.key.set ID de Store key Escribir valor de una clave
store.key.delete ID de Store key Eliminar una clave
store.key.has ID de Store key Verificar existencia de clave

Errores

Condición Tipo Reintentable
ID de recurso vacio errors.INVALID no
Recurso no encontrado errors.NOT_FOUND no
Almacen liberado errors.INVALID no
Permiso denegado errors.PERMISSION_DENIED no

Consulte Manejo de Errores para trabajar con errores.