Mejores prácticas para las suscripciones y los temas

Revise las mejores prácticas para las suscripciones y los temas utilizados con las notificaciones de Oracle Cloud Infrastructure.

Cómo evitar el procesamiento de elementos duplicados

Una alarma, suscripción a anuncios, regla de evento, conector o notificación contextual (regla de alarma o evento) puede disparar un mensaje . A continuación, el servicio de notificaciones envía el mensaje a muchos tipos de suscripciones, incluidos el correo electrónico, los puntos finales HTTPS y las funciones.

Según sus objetivos, puede que desee evitar que el sistema procese mensajes duplicados de un determinado disparador de mensajes. Esta situación es especialmente relevante al enviar mensajes a suscripciones de función, lo que puede producir llamadas dobles. (Por ejemplo, una suscripción de función, consulte Escenario A: Cambio de tamaño automático de las VM).

Para evitar que el sistema procese mensajes duplicados, escriba el código que desduplica los mensajes recibidos mediante identificadores específicos del disparador:

  • Para cualquier mensaje, considere el uso de una tecla de desduplicación personalizada introducida en el cuerpo del mensaje.
  • Para los mensajes disparados por alarma, utilice una combinación de dedupekey y timestampEpochMillis del mensaje de alarma.
  • Para los mensajes disparados por eventos, utilice eventID del mensaje de evento.
  • Para los mensajes publicados directamente, utilice X-OCI-NS-MessageId en la cabecera (proporcionada por el servicio de notificaciones). Consulte Metadatos de cabecera estándar.

Para gestionar las solicitudes duplicadas enviadas a los puntos finales de la API de Oracle Cloud Infrastructure, consulte Token de reintento.

Para obtener información relacionada con la resolución de problemas, consulte Resolución de problemas de notificaciones.