Este guía rápido le ayuda a entender el funcionamiento del Sensedia Events Hub. Proporciona una visión general de cómo:
Configurar las rutas para enviar y recibir eventos.
Aplicar políticas de seguridad e intentos automáticos de distribución de los eventos a los suscriptores.
TIPLos enlaces incluidos en esta página llevan a secciones más detalladas de nuestra documentación.
En toda la documentación, verá algunos términos propios del contexto de mensajería. Para facilitar la comprensión, explicamos:
Publicadores: también conocidos como publishers, son las aplicaciones remitentes. Son responsables de crear los eventos y enviarlos al Events Hub.
Suscriptores: también llamados subscribers, son los destinatarios, aplicaciones o socios del cliente que reciben los eventos y pueden tomar acciones basadas en ellos.
Business moments: son momentos de oportunidad para el negocio que, utilizando el Events Hub, pueden aprovecharse para generar ingresos.
El Events Hub permite gestionar una arquitectura de distribución de eventos mediante una interfaz low-code, que no requiere conocimientos avanzados de programación. En ella, es posible registrar y gestionar publicadores y suscriptores de eventos de forma totalmente independiente.
Para que el Events Hub sepa qué suscriptores deben recibir qué eventos, existen rutas de publicación y suscripción, formando un canal para recibir y distribuir eventos. Estas rutas se definen a través de tópicos, handlers y contextos, cada uno con un camino específico que se añade a la URL de publicación. Cuando los publicadores envían solicitudes al Events Hub, garantizamos que serán distribuidas solo a los suscriptores registrados para recibir el evento.
Además de gestionar la publicación y suscripción de eventos, el Events Hub garantiza la entrega a los suscriptores mediante:
Seguimiento del status del envío.
Intentos automáticos de entrega.
Reenvío manual a través de la interfaz en caso de fallo.
Para garantizar la seguridad durante todo el proceso de gestión de los eventos, puede añadir interceptores en el flujo de recepción. Esto permite controlar el acceso de los publicadores, que pueden ser validados por un servidor externo.
Para los suscriptores, incluimos una firma digital junto con todos los eventos distribuidos para validar el origen de las solicitudes. Además, puede configurar un token de seguridad estático o dinámico para el tráfico seguro de la información.
Tópicos, handlers y contextos son los elementos que forman el canal de publicación y suscripción de eventos. Organizan las rutas de recepción y distribución de los eventos, asegurando que los mensajes lleguen a los suscriptores correctos.
El tópico es el último marcador de la URL de publicación y es a través de él que el Events Hub encuentra los suscriptores que deben recibir cada evento. Los publicadores envían solicitudes usando la URL de publicación del tópico y el Events Hub dirige los eventos a todos los suscriptores activos en el tópico.
Los handlers son grupos de tópicos que sirven para agruparlos de forma lógica. También son responsables de aplicar políticas de seguridad y entrega de eventos, que serán compartidas con todos los tópicos dentro de ellos.
Los contextos permiten reutilizar tópicos en diferentes escenarios. El servidor externo de autorización se define por contexto, lo que significa que cuando dos contextos diferentes se habilitan para un tópico, es posible utilizar dos endpoints distintos de autorización para el mismo tópico.
TIPLa URL de publicación de eventos se compone de dos partes: la base (exclusiva de cada cliente) y los marcadores de posición context, handler y topic, organizados en la siguiente estructura: url-base/context/handler/topic.
Ejemplo: mismo tópico en escenarios diferentes
Tiene un handler llamado "Alerts", en el path
/alerts
, donde están agrupados tópicos de alerta de monitoreo de las APIs. Uno de estos tópicos es/latency
, que distribuye eventos de alerta de latencia.
En este escenario, puede optar por:
No registrar ningún contexto. Cuando esto sucede, el Events Hub define el contexto "Default" como predeterminado, y ningún marcador se añade a la URL de publicación. Con esto, las solicitudes para el tópico
latency
se enviarán aurl-base/alerts/latency
y todos los suscriptores activos en él recibirán los eventos.Registrar un contexto para, por ejemplo, definir entornos. En un escenario de prueba, en el que no desea que los suscriptores del tópico reciban alertas, puede registrar el contexto
testing
y habilitarlo para el tópicolatency
.
Para registrar suscriptores en el contexto, debe vincularlos al tópico
latency
y habilitarlos solo para el contextotesting
. Así, los eventos enviados a<url-base>/testing/alerts/latency
serán distribuidos únicamente a los suscriptores de ese contexto.
El contexto de prueba también permite utilizar un mock de autorización para que su equipo no necesite validar las credenciales del endpoint de autorización del contexto predeterminado.
TIPPara registrar handlers con contexto, recomendamos registrar el contexto previamente en la pantalla Contexts.
Handlers se crean y gestionan en la pantalla Handlers. En la pantalla de registro y edición de un handler, puede:
Registro de contextos, handlers y tópicos
El Events Hub permite que ambos lados de la integración de eventos, productores y consumidores, se registren de forma intuitiva e independiente.
Los publicadores son la fuente de los eventos. Se registran en la pantalla Publishers. Puede crearlos o importar una app de la Sensedia API Platform.
En el proceso de registro, conecta el publicador a los tópicos a los que enviará eventos. Además, elige qué contextos se compartirán con él.
Pantalla de registro y gestión de publicadores
Los suscriptores son quienes reciben los eventos. Se registran en la pantalla Subscribers. Al registrar un suscriptor, lo inscribe en los tópicos de los que recibirá eventos y también elige qué contextos se compartirán con él.
IMPORTANTPara los suscriptores, es necesario configurar una URL para cada tópico que recibirá los eventos. Con esto, un mismo suscriptor puede recibir eventos en URLs diferentes.
Registro de suscriptores: definición de URL del suscriptor
En la pantalla Policies, puede definir las medidas de seguridad para publicadores y la entrega de eventos a los suscriptores. Esto incluye:
La cantidad de intentos automáticos de entrega que se realizarán.
Tiempo límite de solicitud.
Códigos de estado HTTP que activan nuevos intentos cuando se devuelven.
La seguridad para publicadores se garantiza mediante interceptores que validan su identidad, como OAuth, JWT, Client ID y Access Token. Además, puede filtrar el acceso de los publicadores por IP.
Configuración de política: sección de seguridad
Configuración de política: sección de intentos automáticos de entregas
Las políticas se aplican a los handlers durante su creación o edición en la pantalla Handlers. Por lo tanto, todos los tópicos de un handler usan la misma política.
La autorización de publicadores se define a nivel de contexto por un servidor externo de autorización, configurado en la pantalla Authorizations.
El Events Hub implementa capas de seguridad que permiten que los suscriptores verifiquen la procedencia de los mensajes recibidos. Esto ocurre mediante firmas digitales transmitidas en todas las solicitudes. Esta firma es un token JWT generado a partir de una clave de conocimiento mutuo entre suscriptores y el Events Hub durante el registro de suscriptores.
Para reforzar la seguridad, también puede configurar un token estático o dinámico para incluirlo en las solicitudes.
Registro de suscriptores: etapa para envío de clave de conocimiento mutuo y configuración de token
Puede seguir en detalle los eventos recibidos a través de la pantalla Event Status. Para cada evento, se muestran los intentos y el historial de distribución a los suscriptores.
Listado de eventos recibidos de los publicadores
NOTELos intentos automáticos de entrega usan un algoritmo de retroceso exponencial para aumentar las posibilidades de éxito. Sin embargo, si todos los envíos a un suscriptor fallan, puede intentar una entrega manual en la pantalla Delivery Retry.
Nuestro sitio web utiliza cookies para habilitar funcionalidades básicas de evaluación y notificaciones. No utilizamos cookies de seguimiento para publicidad ni análisis de terceros.Aprender más