Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Gerenciamento de Expiração de Chaves | Recursos Avançados e Segurança
Introdução ao Redis

bookGerenciamento de Expiração de Chaves

TTL especifica a duração que uma chave permanece disponível no banco de dados. Após esse tempo expirar, a chave é automaticamente excluída.

Conforme mostrado no exemplo, chaves com TTLs expirados são removidas, enquanto as demais chaves continuam existindo no banco de dados com seus tempos de vida atualizados. Isso ajuda a otimizar o uso de memória e automatizar a remoção de dados desatualizados.

Definindo Expiração de Chave

É possível definir o tempo de expiração para uma chave de várias maneiras. Por exemplo, pode-se definir uma chave e especificar que ela existirá por uma hora:

SET my_key "session:31003"
EXPIRE my_key 3600

Aqui, a chave my_key será automaticamente excluída após 3600 segundos (1 hora).

Alternativamente, é possível combinar a definição de um valor e o TTL em um único comando. Por exemplo, para definir o TTL em segundos ou milissegundos:

SET my_key "value" EX 3600
SET my_key "value" PX 60000

No primeiro caso, a chave irá expirar em 3600 segundos, e no segundo caso, irá expirar em 60000 milissegundos (1 minuto).

Verificando o TTL Restante

Para verificar quanto tempo resta antes de uma chave expirar, utilize o comando TTL:

TTL my_key

Se a chave existir e possuir um TTL, o comando retornará o tempo restante em segundos. Por exemplo, se o resultado for 120, a chave irá expirar em 2 minutos. Se a chave não tiver expiração, o resultado será -1, e se a chave não existir, o resultado será -2.

Para um controle mais preciso, é possível utilizar milissegundos:

PTTL my_key

Por exemplo, se o resultado for 45000, isso significa que a chave irá expirar em 45 segundos.

Remoção da Expiração de Chaves

Caso uma chave não deva mais expirar automaticamente, é possível remover seu TTL:

PERSIST my_key

Após este comando, a chave my_key se tornará permanente e não será excluída automaticamente.

Aplicações Práticas

A gestão da expiração de chaves possui uma ampla variedade de casos de uso. Por exemplo, em cache, registros expirados são automaticamente removidos, liberando memória. Para gerenciamento de sessões, garante que sessões inativas sejam encerradas, melhorando tanto a segurança do sistema quanto o desempenho.

1. Qual é o objetivo de gerenciar o TTL das chaves no Redis?

2. O que acontece ao executar o comando PERSIST em uma chave?

question mark

Qual é o objetivo de gerenciar o TTL das chaves no Redis?

Select the correct answer

question mark

O que acontece ao executar o comando PERSIST em uma chave?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 1

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Awesome!

Completion rate improved to 3.33

bookGerenciamento de Expiração de Chaves

Deslize para mostrar o menu

TTL especifica a duração que uma chave permanece disponível no banco de dados. Após esse tempo expirar, a chave é automaticamente excluída.

Conforme mostrado no exemplo, chaves com TTLs expirados são removidas, enquanto as demais chaves continuam existindo no banco de dados com seus tempos de vida atualizados. Isso ajuda a otimizar o uso de memória e automatizar a remoção de dados desatualizados.

Definindo Expiração de Chave

É possível definir o tempo de expiração para uma chave de várias maneiras. Por exemplo, pode-se definir uma chave e especificar que ela existirá por uma hora:

SET my_key "session:31003"
EXPIRE my_key 3600

Aqui, a chave my_key será automaticamente excluída após 3600 segundos (1 hora).

Alternativamente, é possível combinar a definição de um valor e o TTL em um único comando. Por exemplo, para definir o TTL em segundos ou milissegundos:

SET my_key "value" EX 3600
SET my_key "value" PX 60000

No primeiro caso, a chave irá expirar em 3600 segundos, e no segundo caso, irá expirar em 60000 milissegundos (1 minuto).

Verificando o TTL Restante

Para verificar quanto tempo resta antes de uma chave expirar, utilize o comando TTL:

TTL my_key

Se a chave existir e possuir um TTL, o comando retornará o tempo restante em segundos. Por exemplo, se o resultado for 120, a chave irá expirar em 2 minutos. Se a chave não tiver expiração, o resultado será -1, e se a chave não existir, o resultado será -2.

Para um controle mais preciso, é possível utilizar milissegundos:

PTTL my_key

Por exemplo, se o resultado for 45000, isso significa que a chave irá expirar em 45 segundos.

Remoção da Expiração de Chaves

Caso uma chave não deva mais expirar automaticamente, é possível remover seu TTL:

PERSIST my_key

Após este comando, a chave my_key se tornará permanente e não será excluída automaticamente.

Aplicações Práticas

A gestão da expiração de chaves possui uma ampla variedade de casos de uso. Por exemplo, em cache, registros expirados são automaticamente removidos, liberando memória. Para gerenciamento de sessões, garante que sessões inativas sejam encerradas, melhorando tanto a segurança do sistema quanto o desempenho.

1. Qual é o objetivo de gerenciar o TTL das chaves no Redis?

2. O que acontece ao executar o comando PERSIST em uma chave?

question mark

Qual é o objetivo de gerenciar o TTL das chaves no Redis?

Select the correct answer

question mark

O que acontece ao executar o comando PERSIST em uma chave?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 1
some-alt