Крючок истечения срока действия ключа Redis / уведомления в рельсах - PullRequest
0 голосов
/ 23 марта 2020

Мне нужно вызвать (обратный вызов) метод, как только истек срок действия ключа Redis. Предоставляет ли redis (ruby gem) какой-либо механизм уведомления или регистрацию обратного вызова?

Любая помощь будет принята с благодарностью.

1 Ответ

0 голосов
/ 25 марта 2020

Это невозможно из-за того, как работает Redis. Истечение срока действия ключа в Redis является асинхронным, и обратный вызов отсутствует, если срок действия ключа истек. Следовательно, гем Ruby (redis-rb) не поддерживает эту функциональность как таковую. Вероятно, был бы альтернативный способ смоделировать решение, которое вы строите.

Ради полноты: если вы действительно хотите такое поведение, я бы добавил, что есть один способ сделать эту работу. Вы можете подключиться к журналу репликации главного узла и наблюдать за DEL операциями, исходящими из срока действия ключа, а затем вызывать требуемые обратные вызовы.

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