У меня есть сценарий использования, в котором я хочу включить уведомление только для определенного набора ключей, чтобы по истечении срока действия этих ключей я мог получать уведомление от Redis.
Я следовал этому ответу, чтобы реализовать это.
Я установил для параметра notify-keyspace-events значение "Ex"
Для этого я добавляю ключи, для которых я хочу получать уведомления в DB-0, и другие ключи в DB-1. Но я получаю уведомления для обеих БД. Есть ли способ просто получить уведомление от конкретной БД?
Согласно документации Redis:
" Redis может уведомлять клиентов Pub / Sub о событиях, происходящих в пространстве ключей.
Эта функция задокументирована на http://redis.io/topics/notifications
Например, если включено уведомление о событиях пространства ключей, и клиент
выполняет операцию DEL с ключом "foo", хранящимся в базе данных 0 , два
сообщения будут публиковаться через Pub / Sub:
PUBLISH пробел @ 0 : foo del
ПУБЛИКАЦИЯ keyevent @ 0 : del foo
«
Но я получаю уведомление от DB-0 и DB-1.
PS: я знаю, что могу фильтровать ключи в своем приложении, но я храню слишком много ключей с истекшим сроком в Redis, и отправка уведомления для всех с истекшим сроком действия увеличит нагрузку на мой сервер Redis.