Подтвердить что ты не робот

В терминах Laymen, что такое Redis Pub/Sub?

Зачем мне это использовать? Приведите несколько основных примеров.

4b9b3361

Ответ 1

Клиент redis подписывается на получение сообщений, отмеченных определенным тегом, называемым каналом. Другие клиенты публикуют на этом канале. Redis уведомляет каждого подписавшегося клиента каждый раз, когда сообщение публикуется кем-либо на канал.

Вы также можете подписаться на шаблон канала - подумайте о регулярном выражении.

Это помогает сделать код распределяемым. Это позволяет битам кода запускаться в разных процессах и, возможно, даже с разными машинами, а также взаимодействовать друг с другом через эти очереди.

Эта функция исходит из повторяющихся пользовательских запросов. Для примера приведен пример использования здесь:

сайт, связанный с новостями, нуждается в обновлении кешированная копия домашней страницы время публикации новой статьи.

Рабочий процесс фонового кэша подписывается на все каналы, которые начинаются с 'new.article.:

redis> PSUBSCRIBE new.article.*

Процесс публикации статьи создает новая технологическая статья (в этом Например, эта статья имеет ID '1021), добавляет идентификатор статей к набору все технические статьи и публикует идентификатор статьи 'Канал new.article.technology:

redis> MULTI
OK
redis> SET article.technology.1021 "In today technology news, ..."
QUEUED
redis> SADD article.technology 1021
QUEUED
redis> PUBLISH new.article.technology 1021
QUEUED
redis> EXEC
1. OK
2. (integer) 1
3. (integer) 1

На этом этапе фоновый кеш рабочий процесс получит сообщение и сразу узнайте, что новый была опубликована технологическая статья, впоследствии выполняя соответствующие обратный вызов для повторной генерации домашней страницы.

http://redis.io/topics/pubsub