Notifications d'événements Pub/Sub
Si plusieurs clients sont connectés dans un environnement de cache, il doit y avoir une communication efficace entre eux. Les notifications d'événements sont un mécanisme efficace dans Pub/Sub pour informer l'éditeur et l'abonné de divers événements se produisant dans le cache et les applications.
Notes
Cette fonctionnalité est également disponible dans NCache Professional.
Notification d'échec de remise de message
Dans Pub/Sub MessageDeliveryFailureMessageDeliveryFailure la notification est enregistrée par l'éditeur pour un sujet. Cette notification d'échec avec le message d'échec est envoyée à l'éditeur lorsqu'un message ne parvient pas à être livré à l'abonné ou si le message est supprimé ou a expiré avant la livraison.
Notification d'échec de livraison est envoyé à tout éditeur qui a enregistré un événement d'échec de message sur un sujet.
Si la remise d'un message échoue en raison d'une erreur, le sujet tente de remettre ce message jusqu'à ce qu'il expire ou soit expulsé.
Si l'expiration du message est déclenchée, une notification est envoyée à l'éditeur contenant le message expiré et la raison de l'échec.
Si les messages sont marqués comme ayant échoué, ils sont uniquement envoyés à l'éditeur.
Dans le cas où un message a été publié dans un sujet sans aucune expiration configurée, aucune notification ne sera envoyée à l'éditeur car le message reste dans le sujet jusqu'à ce que le cache soit actif.
Si vous avez désactivé l'expulsion et n'avez pas défini de date d'expiration pour vos messages, vos messages persisteront dans le cache et le cache sera plein. Lorsque le cache est plein, aucune autre demande ne sera acceptée et les futurs messages ne seront pas livrés. Dans ce cas, une notification d'échec de livraison sera également déclenchée et envoyée à l'éditeur qui s'est inscrit pour cette notification.
Notification de message reçu
MessageReçuRappel déclenche des événements pour les abonnés enregistrés sur le sujet afin qu'il puisse recevoir les messages publiés.
Les abonnés enregistrent un MessageReçuRappel contre le sujet.
Les messages sont reçus par le(s) abonné(s) de manière asynchrone. Les abonnés s'inscrivent à l'événement sur le sujet montrant leur intérêt pour les messages. Lorsqu'un message est publié sur le sujet, il transmet ce message au(x) abonné(s).
Notification de suppression de sujet
Si un sujet est supprimé, il supprime tous les messages et méta-informations associées du cache. Ainsi, l’abonné et l’éditeur doivent être informés de cette suppression pour les raisons suivantes :
L'abonné attend peut-être des messages entrants provenant du sujet enregistré. Une fois le sujet supprimé, les abonnés peuvent alors gérer leur exécution en conséquence via des notifications d'événements et éviter un état d'attente infini.
L'éditeur peut éviter d'envoyer des messages à un sujet inexistant et gérer les charges utiles en attente et les exécutions futures en conséquence.
Ressources additionnelles
NCache fournit un exemple d'application pour Pub/Sub sur GitHub.
Voir aussi
.RAPPORTER: Alachisoft.NCache.Runtime.Caching espace de noms.
Java: com.alachisoft.ncache.runtime.caching espace de noms.
Node.js : Sujet classe.
python: ncache.services clients classe.