Встречается на собеседованиях • сегодня

Что происходит по истечению TTL в Redis

При истечении TTL (Time To Live) в Redis ключ автоматически удаляется из базы данных. Redis использует два механизма для этого:

  1. Пассивное удаление - ключ удаляется при попытке доступа к нему, если обнаружено, что TTL истек.
  2. Активное удаление - Redis периодически (10 раз в секунду) проверяет случайные ключи с TTL и удаляет истекшие.

Пример работы с TTL:

python
import redis

r = redis.Redis()
r.set('temp_key', 'value', ex=10)  # Установка ключа с TTL=10 сек
print(r.ttl('temp_key'))  # Проверка оставшегося времени
# Через 10+ секунд:
print(r.get('temp_key'))  # Вернет None, ключ удален

Важные нюансы:

  • Удаление не гарантируется точно в момент истечения TTL
  • Для ключей без TTL команда TTL вернет -1
  • Если TTL истек, но ключ еще не удален, TTL вернет -2
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы