Notificaciones de eventos de nivel de gestión
Los eventos se pueden registrar para operaciones de administración, incluido el borrado de caché, la detención de caché y la entrada o salida de miembros. Aquí, describimos cómo registrar y cancelar el registro de notificaciones de eventos a nivel de administración.
Requisitos previos para configurar notificaciones de eventos de nivel de administración
- Para obtener información sobre los requisitos previos estándar necesarios para trabajar con todos NCache características del lado del cliente, consulte la página proporcionada en Requisitos previos de la API del lado del cliente.
- Asegúrese de habilitar notificaciones de eventos usando el NCache Centro de Gestión.
- Para obtener detalles de la API, consulte: Dolor, Artículo de caché, Miembro Unido, Miembro Izquierdo, Caché detenido, caché borrado.
Evento de borrado de caché
En algunos casos, la aplicación debe recibir una notificación cuando se borra el caché. Para el evento de borrado de caché, el usuario debe implementar un método que tenga la misma firma que el Cache ClearedCallback. Se debe implementar el siguiente método en la aplicación para realizar el procesamiento deseado cuando se activa la notificación de borrado de caché.
// Register cache cleared event
// OnCacheCleared callback will be triggered on cache clear event
cache.NotificationService.CacheCleared += OnCacheCleared;
Note
Para garantizar que la operación sea a prueba de fallas, se recomienda manejar cualquier posible excepción dentro de su aplicación, como se explica en Manejo de fallas.
Para recibir el evento de borrado de caché, se debe incorporar la siguiente línea de código a la aplicación:
// Perform the tasks after getting the cache clear event
Console.WriteLine("Cache has been cleared.");
Si no desea recibir ninguna notificación sobre el evento de borrado de caché, agregue la siguiente línea en su aplicación:
// UnRegister cache cleared event
cache.NotificationService.CacheCleared -= OnCacheCleared;
Evento detenido en caché
De manera similar al evento de borrado de caché, también puede recibir notificaciones cuando se detiene el caché. Se debe implementar el siguiente método en la aplicación para realizar el procesamiento cuando se activa el caché detenido.
// Register cache stopped event
// OnCacheStopped callback will be triggered when cache is stopped
cache.NotificationService.CacheStopped += OnCacheStopped;
Para recibir el evento detenido por caché, se debe incorporar la siguiente línea de código a la aplicación:
// Perform the tasks after getting the cache stopped event
Console.WriteLine($"'{cacheName}' has been stopped.");
Si no desea recibir ninguna notificación sobre eventos detenidos por caché, agregue la siguiente línea en su aplicación:
// Un-Register cache stopped event
cache.NotificationService.CacheStopped -= OnCacheStopped;
Miembro se unió al evento
El usuario también puede recibir una notificación cada vez que un miembro se une a un clúster. Se debe implementar el siguiente método en la aplicación para realizar el procesamiento cuando un miembro se une a un clúster.
// Perform task after Member Joined event gets fired
Console.WriteLine($"Node with IP:{nodeInfo.IpAddress} has joined the cluster.");
Para recibir el evento de miembro unido, se debe incorporar la siguiente línea de código en la aplicación:
// Register memebr join event
// OnMemeberJoined callback will be triggered when a new member joins cache
cache.NotificationService.MemberJoined += OnMemberJoined;
Si no desea recibir notificaciones de eventos a los que se hayan unido miembros, agregue la siguiente línea a su solicitud:
// Un-Register member join event
cache.NotificationService.MemberJoined -= OnMemberJoined;
Evento de abandono de miembro
El usuario puede recibir una notificación cada vez que un miembro abandona un grupo. Se debe implementar el siguiente método en la aplicación para realizar el procesamiento cuando un miembro abandona un clúster.
// Register memebr left event
// OnMemeberleft callback will be triggered when a member leaves cache
cache.NotificationService.MemberLeft += OnMemberLeft;
Para recibir el evento de abandono de miembro, se debe incorporar la siguiente línea de código a la aplicación:
// Perform task after Member Left event gets fired
Console.WriteLine($"Node with IP:{nodeInfo.IpAddress} has left the cluster.");
Si no desea recibir notificaciones sobre eventos de abandono de miembros, agregue la siguiente línea en su solicitud:
Recursos adicionales
NCache proporciona una aplicación de muestra para notificaciones de eventos de nivel de gestión en GitHub.
Vea también
.NETO: Alachisoft.NCache.Eventos.en.tiempo.de.ejecución espacio de nombres
Java: com.alachisoft.ncache.eventos espacio de nombres