es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Opciones para la comunicación entre un servidor Node.js y un sitio web PHP

Hasta ahora he utilizado websockets para comunicarme entre Node.js y PHP.
He creado un servidor websocket en Node.js que está escuchando en un puerto personalizado.

Luego, en el script de PHP, he utilizado stream_socket_client() y funciones relacionadas para conectarme como cliente.
Luego, cada vez que quería algo del servidor, enviaba un mensaje y esperaba una respuesta con los datos (en formato json). Luego construía el HTML para mostrar esos datos al usuario.

Esto funciona, sin embargo, no parece natural y me preguntaba si existen mejores opciones. Los websockets están destinados a la web como su nombre indica, pero yo los estoy utilizando para un servidor local y un script.

Debo mencionar que el servidor debe poder comunicarse con varios clientes al mismo tiempo, ya que un sitio web puede tener varios visitantes. Los módulos websocket de Node.js ofrecen esta capacidad. Pero no es necesario mantener las conexiones activas, ya que el script de PHP solo hace su trabajo y se detiene.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Como experto en IT especializado en PHP y Node.js, he utilizado websockets para comunicarme entre Node.js y PHP. Para lograr esto, he creado un servidor de websockets en Node.js y he utilizado la función stream_socket_client() y funciones relacionadas para conectarme como cliente en PHP. Cada vez que quería algo del servidor, enviaba un mensaje y esperaba una respuesta con los datos en formato JSON. Luego utilizaba esos datos para construir el HTML que se muestra al usuario.

    Si bien este método funciona, puede que no sea la forma más natural de comunicación entre un servidor local y un script. Los websockets están diseñados para la web, de ahí su nombre, pero los estoy utilizando para un servidor local y un script. Además, el servidor necesita poder comunicarse con múltiples clientes simultáneamente, ya que un sitio web puede tener varios visitantes. Los módulos de websockets de Node.js ofrecen esta capacidad, pero mantener las conexiones activas no es necesario para mi caso de uso, ya que el script de PHP solo se ejecuta una vez.

    Por lo tanto, estoy abierto a explorar métodos de comunicación alternativos que puedan ser más adecuados para mis necesidades.

Comments are closed.