¿Cómo puedo ejecutar un script PHP en segundo plano después de enviar un formulario?

Problema
Tengo un formulario que, cuando se envíe, ejecutará un código básico para procesar la información presentada y la insertará en una base de datos para mostrarla en un sitio web de notificaciones. Además, tengo una lista de personas que se han registrado para recibir estas notificaciones por correo electrónico y mensaje SMS. Esta lista es trivial en este momento (solo empuja alrededor de 150), sin embargo, es suficiente para que tome más de un minuto recorrer la tabla completa de suscriptores y enviar más de 150 correos electrónicos. (Los correos electrónicos se envían individualmente según lo solicitado por los administradores del sistema de nuestro servidor de correo electrónico debido a las políticas de correo electrónico masivo).

Durante este tiempo, la persona que publicó la alerta se sentará en la última página del formulario durante casi un minuto sin ningún refuerzo positivo de que su notificación se publique. Esto lleva a otros problemas potenciales, todos los que tienen posibles soluciones que creo que son menos que ideales.

Primero, el afiche podría pensar que el servidor está retrasado y hacer clic en el botón 'Enviar' nuevamente, haciendo que el script se inicie nuevamente o se ejecute dos veces. Podría resolver esto usando JavaScript para deshabilitar el botón y reemplazar el texto para decir algo como 'Procesando ...', sin embargo, esto es menos que ideal porque el usuario seguirá atascado en la página durante la ejecución del script. (Además, si JavaScript está deshabilitado, este problema aún existe).

En segundo lugar, el póster puede cerrar la pestaña o el navegador prematuramente después de enviar el formulario. El script seguirá ejecutándose en el servidor hasta que intente volver a escribir en el navegador, sin embargo, si el usuario navega a cualquier página dentro de nuestro dominio (mientras el script aún se está ejecutando), el navegador se bloquea cargando la página hasta que el script haya finalizado . (Esto solo ocurre cuando una pestaña o ventana del navegador está cerrada y no toda la aplicación del navegador). Aún así, esto no es lo ideal.

(Solución posible
He decidido que quiero dividir la parte del "correo electrónico" de la secuencia de comandos en un archivo separado al que pueda llamar después de que se haya publicado la notificación. Originalmente pensé en poner esto en la página de confirmación después de que la notificación se haya publicado con éxito. Sin embargo, el usuario no sabrá que este script se está ejecutando y cualquier anomalía no será evidente para ellos; Este script no puede fallar.

Pero, ¿qué pasa si puedo ejecutar este script como un proceso en segundo plano? Entonces, mi pregunta es esta: ¿cómo puedo ejecutar un script PHP para activarlo como un servicio en segundo plano y ejecutarlo completamente independiente de lo que el usuario ha hecho a nivel de formulario?

EDITAR: Estano puedo ser cron'ed. Debe ejecutarse en el instante en que se envía el formulario. Estas son notificaciones de alta prioridad. Además, los administradores del sistema que ejecutan nuestros servidores no permiten que los cron se ejecuten con más frecuencia que 5 minutos.

Respuestas a la pregunta(15)

Su respuesta a la pregunta