Podría ser a través de algo como una conexión serie o una conexión ethernet también que podría no ser tan estable además de ser simplemente lenta.
Lo siguiente es la limitación de recursos. Así que si alguna vez has trabajado con este tipo de dispositivos edge y equipos que trabajan más de cerca con el lado del hardware, sabrás que hay muchas restricciones de recursos en estos dispositivos. Y así que si intentas construir una aplicación web tradicional o aplicación de React, digamos que es tal vez como 500 kilobytes de tamaño o 300 kilobytes de tamaño, vendrán a ti y dirán algo como, oh, ya sabes, no tenemos el espacio físicamente en el dispositivo para almacenar tu aplicación, y mucho menos el servidor que sirve tu aplicación al lado del cliente. Así que hay muchas restricciones de recursos que vienen con el despliegue de aplicaciones a estos dispositivos edge.
Luego está el almacenamiento innecesario de activos de la aplicación que va de la mano con las restricciones de recursos. Así que si quieres tener imágenes o videos o documentos o PDFs o lo que sea, cualquier tipo de activo estático, te encuentras con el problema de que simplemente la restricción de recursos de almacenamiento en el dispositivo. Luego está el tráfico de red pesado para el primer renderizado. Así que si lo estás estructurando como una aplicación web tradicional en combinación con la conexión de red lenta o inestable, si tienes múltiples solicitudes de red yendo y viniendo para recuperar múltiples recursos, tu aplicación podría retrasarse o podría simplemente, ya sabes, potencialmente romperse si la conexión se vuelve realmente, realmente inestable. Así que eso es otro problema.
Y por último, si nuevamente, si has trabajado con este tipo de plataforma o desplegando aplicaciones a este tipo de plataformas embebidas, sabrás que cualquier tipo de actualización, ya sea a la interfaz de usuario o al firmware, requiere una actualización de firmware porque la aplicación web está almacenada y alojada y servida desde el dispositivo embebido. Y no sé tú, pero no sé cuándo fue la última vez que actualicé el firmware en mi router Wi-Fi, por ejemplo, o incluso mi placa base en mi PC. Y, ya sabes, eso causa muchos problemas, ya sabes, en la situación actual donde hay muchas CVEs saliendo como hemos visto en el último año, abordar esos o solucionar esos puede requerir un esfuerzo realmente grande de tu usuario. Y eso es solo un problema que viene con alojar la aplicación en el dispositivo embebido.
Entonces, ¿cómo abordamos todos estos problemas, todos estos problemas que acabo de mencionar? Bueno, podemos aprovechar PWAs o aplicaciones web progresivas. Así que en teoría, es bastante simple. Todo lo que realmente haces es desplegar tu aplicación web a un servicio en la nube como lo harías tradicionalmente. Proporcionas algunas instrucciones a tu usuario sobre cómo guardar la aplicación como una aplicación web progresiva en su respectivo dispositivo, y luego se almacena en caché en ese dispositivo. Y luego ellos inician una conexión a tu firmware, tu dispositivo edge, y a través de la PWA, simplemente establece una conexión y comienza a poblar la interfaz de usuario o la interfaz con los datos de tu dispositivo edge. Y es tan simple como eso. Al final del día, al hacer esto, el dispositivo edge se vuelve realmente simple porque es solo una API delgada que sirve datos en lugar de un servidor web completo que sirve una aplicación web. Mejora el SCP, el primer renderizado con contenido, para la aplicación porque está almacenada en caché en el dispositivo del cliente. No hay restricciones de recursos porque todo está en el dispositivo del cliente que tiene más RAM y más almacenamiento. Es más fácil actualizar la interfaz de usuario de la aplicación porque simplemente haces tu cambio y lo despliegas a tu servicio en la nube. Y la PWA, configurarás un Service Worker que buscará actualizaciones de ese servicio en la nube, ese servidor en la nube, y extraerá esos últimos cambios una vez que se establezca una conexión de red regular. Y por último, libera recursos en el dispositivo edge, lo cual es increíble porque tu equipo de firmware realmente lo amará porque les dará más espacio para registros o simplemente otras aplicaciones críticas en el firmware, el dispositivo edge. Así que eso es PWAs. Y no entraré en los detalles de desarrollar PWA porque realmente varía dependiendo del framework que estés usando. Pero diría que la mayoría de los, si no todos los grandes frameworks o frameworks populares que están ahí fuera soportan PWAs con alguna configuración realmente simple. Incluso Vite lo hace, por ejemplo, y eso es solo como un plugin de Vite que luego configuras.
Comments