Spec-Zone.ru › Redis

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"

Вывод для мастера состоит из следующих частей:

  1. Строка master.
  2. Текущий смещение репликации мастера, которое представляет собой смещение, используемое мастерами и репликами для понимания, в частичных ресинхронизациях, части потока репликации, которую реплики должны извлечь, чтобы продолжить.
  3. Массив из трех элементов, представляющий подключенные реплики. Каждый подмассив содержит IP-адрес, порт реплики и последнее подтвержденное смещение репликации.

Вывод команды для реплик

Пример вывода при вызове ROLE в экземпляре реплики:

1) "slave"
2) "127.0.0.1"
3) (integer) 9000
4) "connected"
5) (integer) 3167038

Вывод для реплики состоит из следующих частей:

  1. Строка slave, из соображений обратной совместимости (см. примечание в конце этой страницы).
  2. IP-адрес мастера.
  3. Номер порта мастера.
  4. Состояние репликации с точки зрения мастера, которое может быть connect (экземпляру необходимо подключиться к мастеру), connecting (соединение мастер-реплика выполняется), sync (мастер и реплика пытаются выполнить синхронизацию), connected (реплика активна).
  5. Объем данных, полученных от реплики до сих пор, в терминах смещения репликации мастера.

Вывод для сентинтеля

Пример вывода сентинтеля:

1) "sentinel"
2) 1) "resque-master"
   2) "html-fragments-master"
   3) "stats-master"
   4) "metadata-master"

Вывод сентинтеля состоит из следующих частей:

  1. Строка sentinel.
  2. Массив имен мастеров, отслеживаемых этим экземпляром сентинтеля.

Возврат

Массив ответа: где первый элемент является одним из 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/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API