Marco web Pusa que traslada la lógica del frontend de JavaScript al lado del servidor

Se ha publicado el marco web Pusa que implementa un concepto que traslada la lógica del frontend, realizada en el navegador mediante JavaScript, al backend: el control del navegador y de los elementos DOM, así como la lógica de negocio, se ejecutan en el backend. El código JavaScript que se ejecuta del lado del navegador se reemplaza por una capa universal que invoca controladores que están en el backend. Ya no es necesario desarrollar utilizando JavaScript para el frontend. La implementación de referencia de Pusa está escrita en PHP y se distribuye bajo la licencia GPLv3. Además de PHP, la tecnología puede ser implementada en cualquier otro lenguaje, incluyendo JavaScript/Node.js, Java, Python, Go y Ruby.

Pusa define un protocolo de intercambio basado en un conjunto minimalista de comandos. Al cargar la página, el navegador carga el contenido básico del DOM y el núcleo JavaScript de Pusa-Front. Pusa-Front, mediante solicitudes Ajax, envía eventos del navegador (como click, blur, focus y keypress) y parámetros de solicitud (el elemento que provocó el evento, sus atributos, URL, etc.) al controlador del servidor Pusa-Back. Basándose en los datos recibidos, Pusa-Back determina el controlador, ejecuta la carga útil y forma un conjunto de comandos en respuesta. Al recibir la respuesta de la solicitud, Pusa-Front ejecuta los comandos, modificando el contenido del DOM y el entorno del navegador.

El estado del frontend se forma pero no se controla por el backend, lo que hace que el desarrollo para Pusa sea similar al código para una tarjeta gráfica o Canvas, donde el resultado de la ejecución no está bajo el control del desarrollador. Para crear aplicaciones interactivas basadas en Canvas y onmousemove, se contempla la posibilidad de cargar y utilizar scripts adicionales de JavaScript en el lado del cliente. Entre las desventajas de este método se destaca la transferencia de parte de la carga del frontend al backend y el aumento en la frecuencia de intercambio de datos. el servidor.

Entre las ventajas se destacan: la exclusión de la necesidad de que desarrolladores de JavaScript trabajen en el frontend, un código del cliente estable y compacto (11kB), la inaccesibilidad del código principal desde el frontend, la ausencia de la necesidad de serialización REST y herramientas como gRPC, y la eliminación de problemas de conformidad en la rutas de las solicitudes entre el frontend y el backend.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster