Список Redis

Списки Redis — это простые списки строк, упорядоченные по порядку вставки. Вы можете добавить элемент в начало (слева) или в конец (справа) списка.

Список может содержать до 232- 1 элементов (4294967295, более 4 миллиардов элементов в одном списке).

Пример

redis 127.0.0.1:6379> LPUSH examplekey redis
(integer) 1
redis 127.0.0.1:6379> LPUSH examplekey mongodb
(integer) 2
redis 127.0.0.1:6379> LPUSH examplekey mysql
(integer) 3
redis 127.0.0.1:6379> LRANGE examplekey 0 10

1) "mysql"
2) "mongodb"
3) "redis"

В приведенном выше примере мы использовалиLPUSH, чтобы вставить три значения в список с именемexamplekey.

Команды списков Redis

В следующей таблице перечислены основные команды, связанные со списками:

Нет.Команда и описание
1BLPOP key1 [key2 ] timeout
Удалить и получить первый элемент списка. Если в списке нет элементов, он будет блокировать список до истечения времени ожидания или до появления элемента, который можно извлечь.
2BRPOP key1 [key2 ] timeout
Удалить и получить последний элемент списка. Если в списке нет элементов, он будет блокировать список до истечения времени ожидания или до появления элемента, который можно извлечь.
3BRPOPLPUSH source destination timeout
Извлечь значение из списка, вставить извлечённый элемент в другой список и вернуть его; если в списке нет элементов, он будет блокировать список до истечения времени ожидания или до появления элемента, который можно извлечь.
4LINDEX key index
Получить элемент в списке по его индексу
5LINSERT key BEFORE|AFTER pivot value
Вставить элемент до или после элемента в списке
6LLEN key
Получить длину списка
7LPOP key
Удалить и получить первый элемент списка
8LPUSH key value1 [value2]
Вставить одно или несколько значений в начало списка
9LPUSHX key value
Вставить значение в начало существующего списка
10LRANGE key start stop
Получить элементы в заданном диапазоне из списка
11LREM key count value
Удалить элементы списка
12LSET key index value
Установить значение элемента списка по индексу
13LTRIM key start stop
Обрезать список, то есть оставить в списке только элементы в указанном диапазоне, а все элементы вне указанного диапазона будут удалены.
14RPOP key
Удалить последний элемент списка, возвращаемое значение — удалённый элемент.
15RPOPLPUSH source destination
Удалить последний элемент списка, добавить его в другой список и вернуть его
16RPUSH key value1 [value2]
Добавить одно или несколько значений в конец списка
17RPUSHX key value
Добавить значения в существующий список
Другие расширения