Как обеспечить обработку события только одним экземпляром в Redis? - PullRequest
0 голосов
/ 26 октября 2018

Я обрабатываю события из Redis с 3 машины.Но я не хочу, чтобы, если какие-либо события обрабатывались машиной x, другие машины не справились бы с ней.

Я работаю над nodejs.Я использую метод подписки для обработки.

Redis.psubscribe('__keyevent@0__:incrby...

Я вижу Как убедиться, что мое событие обрабатывается только одним экземпляром моего приложения? и Поддерживается конкурирующий потребитель в Redis Pub / Sub? ,но они действительно старые.Там может быть лучший способ.

1 Ответ

0 голосов
/ 26 октября 2018

Redis pubsub не предназначен для такого случая использования. То, что вы хотите, может быть достигнуто с помощью Redis Streams . Он выпущен как часть Redis 5.0 несколько дней назад. У вас может быть 3 потребителя (1 потребитель на экземпляр / компьютер) как часть одной группы потребителей, которая читает из потока Redis. Redis позаботится о том, чтобы 3 получателя получили разные сообщения из одного потока.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...