Notifications d'événements au niveau de la gestion
Les événements peuvent être enregistrés pour les opérations de gestion, notamment l'effacement du cache, l'arrêt du cache et l'adhésion/la gauche d'un membre. Nous décrivons ici comment enregistrer et désenregistrer les notifications d'événements au niveau de la gestion.
Conditions préalables pour configurer les notifications d'événements au niveau de la gestion
- Pour en savoir plus sur les prérequis standard requis pour travailler avec tous NCache fonctionnalités côté client, veuillez vous référer à la page donnée sur Prérequis de l'API côté client.
- Assurez-vous de activer les notifications d'événements utilisant l' NCache Centre de gestion.
- Pour plus de détails sur l'API, reportez-vous à : ICache, CacheItem, Membre rejoint, MembreGauche, CacheArrêté, CacheEffacer.
Événement d'effacement du cache
Dans certains cas, l'application doit être avertie lorsque le cache est vidé. Pour l'événement d'effacement du cache, l'utilisateur doit implémenter une méthode qui a la même signature que l'événement CacheClearedCallback. La méthode suivante doit être implémentée dans l'application pour effectuer le traitement souhaité lorsque la notification d'effacement du cache est déclenchée.
// Register cache cleared event
// OnCacheCleared callback will be triggered on cache clear event
cache.NotificationService.CacheCleared += OnCacheCleared;
Notes
Pour garantir la sécurité de l'opération, il est recommandé de gérer toutes les exceptions potentielles au sein de votre application, comme expliqué dans Gestion des échecs.
Pour recevoir l'événement de suppression du cache, la ligne de code suivante doit être incorporée dans l'application :
// Perform the tasks after getting the cache clear event
Console.WriteLine("Cache has been cleared.");
Si vous ne souhaitez recevoir aucune notification pour l'événement de suppression du cache, ajoutez la ligne suivante dans votre application :
// UnRegister cache cleared event
cache.NotificationService.CacheCleared -= OnCacheCleared;
Événement d'arrêt du cache
Semblable à l’événement d’effacement du cache, vous pouvez également recevoir des notifications lorsque le cache est arrêté. La méthode suivante doit être implémentée dans l'application pour effectuer le traitement lorsque le cache arrêté est déclenché.
// Register cache stopped event
// OnCacheStopped callback will be triggered when cache is stopped
cache.NotificationService.CacheStopped += OnCacheStopped;
Pour recevoir l'événement d'arrêt du cache, la ligne de code suivante doit être incorporée dans l'application :
// Perform the tasks after getting the cache stopped event
Console.WriteLine($"'{cacheName}' has been stopped.");
Si vous ne souhaitez recevoir aucune notification pour les événements arrêtés par le cache, ajoutez la ligne suivante dans votre application :
// Un-Register cache stopped event
cache.NotificationService.CacheStopped -= OnCacheStopped;
Membre rejoint l'événement
L'utilisateur peut également être averti chaque fois qu'un membre rejoint un cluster. La méthode suivante doit être implémentée dans l'application pour effectuer le traitement lorsqu'un membre rejoint un cluster.
// Perform task after Member Joined event gets fired
Console.WriteLine($"Node with IP:{nodeInfo.IpAddress} has joined the cluster.");
Pour recevoir l'événement rejoint par le membre, la ligne de code suivante doit être intégrée à l'application :
// Register memebr join event
// OnMemeberJoined callback will be triggered when a new member joins cache
cache.NotificationService.MemberJoined += OnMemberJoined;
Si vous ne souhaitez recevoir aucune notification pour les événements auxquels participent les membres, ajoutez la ligne suivante à votre candidature :
// Un-Register member join event
cache.NotificationService.MemberJoined -= OnMemberJoined;
Événement de gauche de membre
L'utilisateur peut être averti chaque fois qu'un membre quitte un cluster. La méthode suivante doit être implémentée dans l'application pour effectuer le traitement lorsqu'un membre quitte un cluster.
// Register memebr left event
// OnMemeberleft callback will be triggered when a member leaves cache
cache.NotificationService.MemberLeft += OnMemberLeft;
Pour recevoir l’événement de départ du membre, la ligne de code suivante doit être intégrée à l’application :
// Perform task after Member Left event gets fired
Console.WriteLine($"Node with IP:{nodeInfo.IpAddress} has left the cluster.");
Si vous ne souhaitez recevoir aucune notification pour les événements de départ des membres, ajoutez la ligne suivante dans votre candidature :
Ressources additionnelles
NCache fournit un exemple d'application pour les notifications d'événements au niveau de la gestion sur GitHub.
Voir aussi
.RAPPORTER: Alachisoft.NCache.Runtime.Événements espace de noms.
Java: com.alachisoft.ncache.événements espace de noms.