Ответ 1
Обычный API-интерфейс подписчика должен работать нормально - в прецедентах нет предположений, и это должно работать нормально.
Однако я согласен с тем, что это встроенная функциональность, которая, возможно, может быть полезной из вспомогательных методов API и, возможно, другой подписи делегатов - для инкапсуляции синтаксиса уведомлений о ключевых словах, чтобы людям не нужно было их дублировать, Для этого: я предлагаю вам зарегистрировать проблему, чтобы она не забывалась.
Простой пример того, как подписаться на событие в ключевом пространстве
Прежде всего, важно проверить, что события в контекстном меню Redis включены. Например, события должны быть активированы на клавишах типа Set. Это можно сделать с помощью команды CONFIG SET
:
CONFIG SET notify-keyspace-events KEs
Как только события в ключевом пространстве активированы, он просто подписывается на канал pub-sub:
using (ConnectionMultiplexer connection = ConnectionMultiplexer.Connect("localhost"))
{
IDatabase db = connection.GetDatabase();
ISubscriber subscriber = connection.GetSubscriber();
subscriber.Subscribe("[email protected]__:*", (channel, value) =>
{
if ((string)channel == "[email protected]__:users" && (string)value == "sadd")
{
// Do stuff if some item is added to a hypothethical "users" set in Redis
}
}
);
}
Подробнее о событиях с клавишами здесь.