Redis Key expire la notification avec Jedis
Je suis en train de mettre en œuvre un d'expiration de la clé de notification avec le redis ,quand ma clé expire dans le redis magasin de données. Le redis site web fournit une description de la façon dont http://redis.io/topics/notificationsmais je suis incapable de trouver un exemple de comment le faire en utilisant le redis client java comme les Jedis?
Tout code possible avec illustration sera très utile en tant qu'im nouveau à redis.
source d'informationauteur Rocky Ray
Vous devez vous connecter pour publier un commentaire.
Vous pouvez le faire avec le pub-sub modèle
Démarrer Le Serveur Redis
Changer le notify-clés-les événements dans le redis.conf de KEA (cela dépend de votre exigence).Les détails donnés dans le redis documentation http://redis.io/topics/notifications.
Redis Client Java (Jedis) ,Essayez les solutions suivantes:
Notification Auditeur:
Abonné:
****Note** jedis.psubscribe(nouveau KeyExpiredListener (), "__*__:*"); -- Ce support de méthodes regex modèle de base de canal
alors que les jedis.abonnez-vous(nouveau KeyExpiredListener(), ""__keyspace@0__:notify"); --Cette méthode prend plein/exact du nom de la chaîne
De La Classe De Test:
Maintenant le premier démarrage de l'Abonné, puis Exécutez le TestJedis.Vous allez voir le résultat suivant:
Maintenant un cas d'utilisation où vous êtes intéressé par le valeur de l'expiration de la clé.
Remarque: Redis seulement de fournir la clé à l'expiration de la clé par le biais de la notification des événements clés, la valeur est perdue une fois que la clé de date d'expiration. Dans l'ordre pour obtenir la valeur sur votre clé expire, vous pouvez effectuer les opérations suivantes contourner indiqué ci-dessous avec la délicate notion de clé ombre:
Lorsque vous créez votre notifier à la clé, aussi créer un spécial d'expiration "de l'ombre" (n'expirent pas la réelle communication). Par exemple:
//Obtenir un message d'expiration dans le canal keyevent@0:expiré
//Diviser la touche ":"(ou quel que soit le séparateur que vous décidez de l'utiliser), prenez la deuxième partie, pour obtenir votre clé d'origine
Noter que la valeur de la shadowkey n'est pas utilisé si vous souhaitez utiliser la plus petite valeur possible, il pourrait être une chaîne vide "". C'est un peu plus de travail pour l'installation, mais que le système ci-dessus est exactement ce dont vous avez besoin. La surcharge est un supplément de quelques commandes de récupérer et supprimer votre clé, plus le coût de stockage d'une clé vide.
Sinon, vous devez préparer votre clé d'une façon telle qu'il comprend la valeur ajoutée.
Espère que cela vous aide!
Cela peut vous aider.