Exemplos Práticos

💰 Sistema de Dinheiro Otimizado

-- Cache de dados de jogador com fallback para database
function getPlayerMoney(player)
    local serial = getPlayerSerial(player)
    local cacheKey = "money_" .. serial
    
    -- Tentar cache primeiro (instantâneo)
    local money = LockSystem.Cache.get(cacheKey)
    if money then
        return money
    end
    
    -- Se não tiver cache, consultar database (lento)
    local query = dbQuery(db, "SELECT money FROM players WHERE serial = ?", serial)
    local result = dbPoll(query, -1)
    dbFree(query)
    
    if result and #result > 0 then
        money = result[1].money
        -- Armazenar no cache por 2 minutos
        LockSystem.Cache.set(cacheKey, money, 120)
        return money
    end
    
    return 0
end

function setPlayerMoney(player, amount)
    local serial = getPlayerSerial(player)
    local cacheKey = "money_" .. serial
    
    -- Atualizar database
    dbExec(db, "UPDATE players SET money = ? WHERE serial = ?", amount, serial)
    
    -- Atualizar cache também para manter sincronização
    LockSystem.Cache.set(cacheKey, amount, 120)
    
    setElementData(player, "money", amount)
end

🏆 Sistema de Ranking com Cache

🌍 Cache de Dados de API Externa

🛡️ Sistema de Rate Limiting

⚙️ Cache de Configurações e Permissões

📊 Sistema de Estatísticas com Cache

Atualizado