Crear un cliente para consumir datos de streaming
Diseño del cliente
- Establecer una conexión HTTPS de streaming con el endpoint de flujo filtrado.
- Enviar solicitudes POST de forma asíncrona al endpoint de reglas del flujo filtrado para agregar y eliminar reglas del flujo.
- Manejar bajos volúmenes de datos: mantener la conexión de streaming, detectando objetos de Publicación y señales de keep-alive.
- Manejar altos volúmenes de datos: desacoplar la ingesta del flujo del procesamiento adicional usando procesos asíncronos y asegurarte de que los búferes del lado del cliente se vacíen con regularidad.
- Gestionar el seguimiento del consumo de volumen de datos en el lado del cliente.
- Detectar desconexiones del flujo, evaluarlas y reconectarse al flujo automáticamente.
Conectarse a un endpoint de streaming
Consumo de datos
- Campos que aparezcan en cualquier orden
- Campos inesperados o ausentes
- Publicaciones sin ordenar
- Mensajes duplicados
- Nuevos tipos de mensajes arbitrarios que puedan llegar a través del flujo en cualquier momento
Almacenamiento en búfer
- Asegúrate de que tu cliente esté leyendo el stream con la suficiente rapidez. Normalmente no deberías realizar ningún trabajo de procesamiento real mientras lees el stream. Lee el stream y entrega la actividad a otro hilo/proceso/almacén de datos para realizar tu procesamiento de forma asíncrona.
- Asegúrate de que tu centro de datos tenga un ancho de banda de entrada suficiente para admitir volúmenes grandes y sostenidos de datos, así como picos significativamente mayores (por ejemplo, entre 5 y 10 veces el volumen normal). Para el stream filtrado, el volumen y el ancho de banda correspondiente que necesitas de tu lado dependen por completo de qué Publicaciones estén haciendo coincidir tus reglas.