Pregunta

Estoy buscando un gerente de cola de trabajo en Node.js que PHP pueda invocar. Esto es para una aplicación web que necesita enviar correos electrónicos, crear archivos PDF, etc., en los que me gustaría realizar asíncronos del proceso PHP.

Ejemplo del proceso:

  1. El usuario solicita una página de PHP
  2. PHP invoca al gerente de cola de trabajo y agrega una tarea
  3. La tarea se ejecuta en Node.js asincrónicamente de PHP, preferiblemente cuando está un poco más tranquilo
  4. La tarea es ejecutar un script PHP

¿Por qué este sistema "complejo"?

  1. Escribimos todas nuestras aplicaciones web en PHP (marco de zend)
  2. Nos gustaría comenzar a aprender Node.js
  3. Necesitamos un proceso asincrónico (¡respuesta rápida!)
  4. La tarea "real" también debe ser un script de PHP, para utilizar clases de PHP ya escritas, tener fácil acceso a las conexiones de la base de datos y estar lo más seco posible.

Casos de uso de este sistema:

  1. Se registra a los usuarios, el sistema enviará un correo electrónico de bienvenida
  2. El usuario completa el pedido de comercio electrónico, el sistema enviará factura

Al final, también nos gustaría usar Node-Cron, para realizar tareas CRON que no son de todo sistema (muy específicas de la aplicación). Node-cron invocará al gerente de cola de trabajo, que posteriormente ejecutará un script PHP.

¿Hay tal aplicación ya en nodo?

¿Fue útil?

Solución

Una opción posible es aviones de nodo, que usa Redis.

Otros consejos

En tal caso, preferiría una cola de mensajes como Conejo y bibliotecas del lado del cliente como nodo-amp y php-amp. Luego, simplemente envíe su trabajo desde su script PHP en la cola y deje que Nodejs recoja el trabajo de la cola. Una gran ventaja es que es extensible y es ampliamente utilizado y probado en el mercado empresarial.

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