ROLE
ROLE
ROLE
- Доступно с версии:
- 2.8.12
- Сложность вычислений:
- O(1)
- Категории ACL:
-
@admin,@fast,@dangerous,
Предоставляет информацию о роли экземпляра Redis в контексте репликации, возвращая, является ли экземпляр в настоящее время master, slave, или sentinel. Команда также возвращает дополнительную информацию о состоянии репликации (если роль мастер или раб) или список отслеживаемых имен мастер (если роль сентинтель).
Формат вывода
Команда возвращает массив элементов. Первый элемент — роль экземпляра, представленная одной из следующих трех строк:
- "мастер"
- "раб"
- "сентинтель"
Дополнительные элементы массива зависят от роли.
Вывод для мастера
Пример вывода при вызове ROLE в экземпляре мастера:
1) "master"
2) (integer) 3129659
3) 1) 1) "127.0.0.1"
2) "9001"
3) "3129242"
2) 1) "127.0.0.1"
2) "9002"
3) "3129543"
Вывод для мастера состоит из следующих частей:
- Строка
master. - Текущий смещение репликации мастера, которое представляет собой смещение, используемое мастерами и репликами для понимания, в частичных ресинхронизациях, части потока репликации, которую реплики должны извлечь, чтобы продолжить.
- Массив из трех элементов, представляющий подключенные реплики. Каждый подмассив содержит IP-адрес, порт реплики и последнее подтвержденное смещение репликации.
Вывод команды для реплик
Пример вывода при вызове ROLE в экземпляре реплики:
1) "slave" 2) "127.0.0.1" 3) (integer) 9000 4) "connected" 5) (integer) 3167038
Вывод для реплики состоит из следующих частей:
- Строка
slave, из соображений обратной совместимости (см. примечание в конце этой страницы). - IP-адрес мастера.
- Номер порта мастера.
- Состояние репликации с точки зрения мастера, которое может быть
connect(экземпляру необходимо подключиться к мастеру),connecting(соединение мастер-реплика выполняется),sync(мастер и реплика пытаются выполнить синхронизацию),connected(реплика активна). - Объем данных, полученных от реплики до сих пор, в терминах смещения репликации мастера.
Вывод для сентинтеля
Пример вывода сентинтеля:
1) "sentinel" 2) 1) "resque-master" 2) "html-fragments-master" 3) "stats-master" 4) "metadata-master"
Вывод сентинтеля состоит из следующих частей:
- Строка
sentinel. - Массив имен мастеров, отслеживаемых этим экземпляром сентинтеля.
Возврат
Массив ответа: где первый элемент является одним из master, slave, sentinel, а дополнительные элементы зависят от роли, как показано выше.
Примеры
ROLE
Примечание о слове «раб» в данном руководстве: начиная с Redis 5, если не учитывать обратную совместимость, проект Redis больше не использует слово «раб». К сожалению, в этой команде слово «раб» является частью протокола, поэтому мы сможем удалить такие случаи только тогда, когда этот API будет естественным образом устаревшим.
© 2006–2022 Salvatore Sanfilippo
Licensed under the Creative Commons Attribution-ShareAlike License 4.0.
https://redis.io/commands/role/