Blog

Integración de WebSocket para la visualización en tiempo real de datos de sensores de vehículos

En Navixy, nos enfocamos en ofrecer experiencias de datos en tiempo real que le hagan la vida más fácil a nuestros clientes que gestionan flotas de vehículos medianas y grandes. En línea con esto, implementamos WebSockets para mejorar la forma en que se entregan los datos de los sensores dentro de nuestras aplicaciones web. Esta actualización mejora drásticamente la gestión de los datos de sensores provenientes de vehículos, carga y activos, garantizando un flujo sin interrupciones.

¿Qué son los WebSockets?

Para aquellos que no estén familiarizados, los WebSockets proporcionan un canal de comunicación full-dúplex a través de una única conexión de larga duración, permitiendo un flujo de datos instantáneo y bidireccional entre el servidor y el cliente (navegador web). A diferencia de los protocolos HTTP tradicionales, donde los datos solo se envían al navegador cuando se solicitan explícitamente, los WebSockets permiten que los datos se envíen en tiempo real tan pronto como estén disponibles en el servidor. Esto es un cambio radical para las aplicaciones que manejan información en constante cambio, como la gestión de flotas.

Para nuestros usuarios, esto significa un rendimiento más fluido con menos recursos del navegador consumidos. En lugar de abrir y cerrar conexiones repetidamente, los WebSockets mantienen una única conexión persistente, lo que reduce tanto el uso de la CPU como de la memoria. Esta eficiencia es crucial en aplicaciones de datos de alta frecuencia, como los sistemas telemáticos a gran escala, donde las actualizaciones en tiempo real de numerosos sensores pueden de otro modo sobrecargar los recursos del navegador.

Websocket scheme

¿Por qué es tan importante esto  para la telemática?

Los datos telemáticos, en particular los provenientes de múltiples sensores en toda una flota, pueden cambiar con frecuencia. Anteriormente, las actualizaciones de datos se procesaban en intervalos establecidos, por ejemplo, cada 10 segundos. Aunque esta diferencia entre 10 segundos e inmediato puede no afectar drásticamente las interacciones cotidianas, el verdadero beneficio de la integración de WebSockets radica en la reducción de la carga del navegador. WebSockets establece una conexión persistente, permitiendo que los datos fluyan de forma asincrónica y continua, sin necesidad de solicitudes repetitivas al servidor. Esto reduce la sobrecarga en la gestión de actualizaciones frecuentes y garantiza un manejo más fluido y eficiente de grandes volúmenes de datos, lo cual es especialmente importante al monitorear flotas con numerosos sensores.

Mejora del flujo de datos de sensores con la integración de WebSocket

Hemos renovado nuestro mecanismo de flujo de datos de sensores para mejorar el rendimiento y reducir la carga en la base de datos. Ahora, los datos de los sensores se almacenan en un caché en memoria de Hazelcast, que es poblado por nuestro servidor TCP. Estos datos en caché se transfieren a la interfaz de usuario cada cinco segundos, lo que reduce significativamente la carga en nuestra base de datos principal.

Hace un año, implementamos tecnología WebSocket para las lecturas de rastreadores (como ubicación, estado de conexión y valores de estado) para garantizar actualizaciones en tiempo real fluidas en el mapa. Ahora, hemos extendido el mismo enfoque a las lecturas de sensores. Anteriormente, mostrar los datos de los sensores requería solicitudes de servidor separadas para cada rastreador, lo que se volvió ineficiente, especialmente con flotas más grandes. Al cambiar los datos de los sensores a WebSocket, los valores de los sensores ahora se actualizan al instante en la lista de rastreadores sin sobrecargar el servidor. Además, WebSockets solo transfieren campos actualizados, lo que significa que si un valor de sensor (como la temperatura) permanece sin cambios, no hay necesidad de enviar esos datos nuevamente, optimizando aún más el flujo de datos entre el servidor y la interfaz de usuario.

Nuevas oportunidades para los desarrolladores que utilizan el API de WebSocket

Este movimiento hacia WebSockets no solo es una victoria para los usuarios finales; los desarrolladores también se benefician. Nuestro API de WebSocket abre nuevas oportunidades para desarrolladores externos que buscan integrarse con Navixy. La transmisión de datos en tiempo real garantiza que sus aplicaciones estén siempre actualizadas con la información más reciente de los sensores, lo cual es crítico para aplicaciones que requieren precisión y tiempo.

Estamos lanzando actualizaciones a nuestra documentación de la API de WebSocket junto con estas nuevas características. Un nuevo evento readings_batch, mejorará el manejo de datos de sensores en tiempo real, y nuestra documentación proporcionará una guía clara para que los desarrolladores aprovechen estas capacidades. Estén atentos para el lanzamiento completo de la documentación en nuestro Developer Hub una vez que finalicen las pruebas.

Mirando hacia adelante: Expansión de la integración de WebSocket

Mientras muchos flujos de datos de sensores ahora se transmiten a través de WebSockets, puede haber aún puntos de datos que no han hecho el cambio. Navixy está mejorando continuamente la plataforma para garantizar que todos los datos relevantes se puedan transmitir de la manera más eficiente posible.

Una área clave para el desarrollo futuro es el Realtime Dashboard, que ya tiene todos los datos necesarios en la interfaz de usuario. El siguiente paso implica aplicar una interfaz actualizada para hacer uso completo de la funcionalidad de WebSocket.

Además, aún hay algunas pequeñas solicitudes de sondeo en la interfaz, como los conteos de alertas no leídas y los conteos de mensajes no leídos, que se optimizarán en futuras actualizaciones.

Para nuestros socios de canal, este desarrollo representa una emocionante oportunidad para mostrar una solución de telemática más rápida y receptiva a sus clientes. Ya sea que estén gestionando flotas de 10 o 10,000 vehículos, las capacidades en tiempo real ofrecidas por WebSockets mejoran la experiencia general y la fiabilidad de nuestra plataforma.

Si tiene alguna pregunta, no dude en contactarnos. Nuestro equipo está listo para ayudar.

← Artículo anterior
¿Está listo para el software más innovador?
REGISTRARSE
Publicaciones recientes