Notifiche di eventi a livello di gestione
Gli eventi possono essere registrati per operazioni di gestione, tra cui la cancellazione della cache, l'arresto della cache e l'aggiunta/abbandono dei membri. Qui descriviamo come registrare e annullare la registrazione delle notifiche di eventi a livello di gestione.
Prerequisiti per configurare le notifiche degli eventi a livello di gestione
- Per conoscere i prerequisiti standard richiesti per lavorare con all NCache Per le funzionalità lato client fare riferimento alla pagina specificata Prerequisiti dell'API lato client.
- Assicurati che abilita le notifiche degli eventi usando il NCache Centro Direzionale.
- Per i dettagli dell'API, fare riferimento a: ICache, CacheItem, MembroUnito, Membro Sinistra, CacheStopped, Cancellata dalla cache.
Evento di cancellazione della cache
In alcuni casi, l'applicazione deve ricevere una notifica quando la cache viene svuotata. Per l'evento di cancellazione della cache, l'utente deve implementare un metodo che abbia la stessa firma di CacheClearedRichiamata. Il seguente metodo deve essere implementato nell'applicazione per eseguire l'elaborazione desiderata quando viene attivata la notifica di svuotamento della cache.
// Register cache cleared event
// OnCacheCleared callback will be triggered on cache clear event
cache.NotificationService.CacheCleared += OnCacheCleared;
Note:
Per garantire che l'operazione sia a prova di errore, si consiglia di gestire eventuali potenziali eccezioni all'interno dell'applicazione, come spiegato in Gestione dei guasti.
Per ricevere l'evento di cancellazione della cache, è necessario incorporare nell'applicazione la seguente riga di codice:
// Perform the tasks after getting the cache clear event
Console.WriteLine("Cache has been cleared.");
Se non desideri ricevere alcuna notifica per l'evento di svuotamento della cache, aggiungi la seguente riga nella tua applicazione:
// UnRegister cache cleared event
cache.NotificationService.CacheCleared -= OnCacheCleared;
Evento interrotto dalla cache
Analogamente all'evento di svuotamento della cache, puoi anche ricevere notifiche quando la cache viene arrestata. Il seguente metodo deve essere implementato nell'applicazione per eseguire l'elaborazione quando viene attivata la cache arrestata.
// Register cache stopped event
// OnCacheStopped callback will be triggered when cache is stopped
cache.NotificationService.CacheStopped += OnCacheStopped;
Per ricevere l'evento di cache-stop, è necessario incorporare nell'applicazione la seguente riga di codice:
// Perform the tasks after getting the cache stopped event
Console.WriteLine($"'{cacheName}' has been stopped.");
Se non desideri ricevere alcuna notifica per gli eventi bloccati dalla cache, aggiungi la seguente riga nella tua applicazione:
// Un-Register cache stopped event
cache.NotificationService.CacheStopped -= OnCacheStopped;
Evento aderente ai membri
L'utente può anche ricevere una notifica ogni volta che un membro si unisce a un cluster. Il seguente metodo deve essere implementato nell'applicazione per eseguire l'elaborazione quando un membro si unisce a un cluster.
// Perform task after Member Joined event gets fired
Console.WriteLine($"Node with IP:{nodeInfo.IpAddress} has joined the cluster.");
Per ricevere l'evento a cui hanno aderito i membri, è necessario incorporare nella domanda la seguente riga di codice:
// Register memebr join event
// OnMemeberJoined callback will be triggered when a new member joins cache
cache.NotificationService.MemberJoined += OnMemberJoined;
Se non desideri ricevere alcuna notifica per gli eventi a cui hanno aderito i membri, aggiungi la seguente riga alla tua richiesta:
// Un-Register member join event
cache.NotificationService.MemberJoined -= OnMemberJoined;
Evento di sinistra del membro
L'utente può ricevere una notifica ogni volta che un membro lascia un cluster. Il seguente metodo deve essere implementato nell'applicazione per eseguire l'elaborazione quando un membro lascia un cluster.
// Register memebr left event
// OnMemeberleft callback will be triggered when a member leaves cache
cache.NotificationService.MemberLeft += OnMemberLeft;
Per ricevere l'evento di abbandono del membro, è necessario incorporare nell'applicazione la seguente riga di codice:
// Perform task after Member Left event gets fired
Console.WriteLine($"Node with IP:{nodeInfo.IpAddress} has left the cluster.");
Se non desideri ricevere alcuna notifica per gli eventi di abbandono dei membri, aggiungi la seguente riga nella tua richiesta:
Risorse addizionali
NCache fornisce un'applicazione di esempio per le notifiche degli eventi a livello di gestione su GitHub.
Vedere anche
.NETTO: Alachisoft.NCache.Eventi.di.runtime spazio dei nomi.
Giava: com.alachisoft.ncache.eventi spazio dei nomi.