Pregunta

En el proceso principal, inicié el servidor tiny-lr(livereload), seguido de generar un proceso secundario que busca cambios en los archivos css.cómo pasar el servidor Livereload al proceso secundario o es posible consultar el servidor Livereload que se está ejecutando actualmente en el proceso secundario para no volver a crearlo y obtener un error que ya está en uso para el puerto.

El mismo caso con el servidor http de nodo.¿Puedo saber si el servidor ya está ejecutándose y usarlo en lugar de crear uno nuevo?

¿Fue útil?

Solución

¿Es posible consultar el livereload? - es posible y puede implementarse de más de una manera.

  1. Usar stdout/stdin para comunicarse con el proceso hijo.Para ver una descripción detallada AQUÍ.Básicamente puedes enviar mensajes de un proceso a otro y responderlos.

  2. Usar http.request para comprobar si el puerto está en uso.

  3. Puedes usar un archivo: el proceso con el servidor mantiene el archivo abierto en modo de escritura: el contenido del archivo almacena el puerto en el que se ejecuta el servidor (si es necesario).

  4. Puedes usar enchufes también para la comunicación entre procesos.

Básicamente, nada de lo anterior. garantías 100% confidencialidad, por lo que tienes que try/catch para errores de todos modos:El servidor puede morir justo después de su verificación, pero antes quería hacer algo con él.

cómo pasar el servidor Livereload al proceso hijo - si te refieres a compartir un objeto entre diferentes procesos que es con seguridad fuera de discusión;Si te refieres a cambiar la propiedad del objeto, estoy 99,99% seguro de que tampoco es posible.

¿Cuál es el problema de tener un solo proceso responsable de ejecutar el servidor?¿Y por qué no utilizar, digamos, para siempre ¿Para encargarse de ejecutar y reiniciar el servidor, si es necesario?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top