Al estar de acuerdo / expandir lo que ya se ha dicho, no creo que FastCGI resuelva el problema.
apache
Cada solicitud en Apache utilizará un hilo de trabajo hasta que se complete la solicitud, lo que puede ser mucho tiempo para las solicitudes COMET.
Este artículo sobre Ajaxian menciona el uso de COMET en Apache y que es difícil. El problema no es específico de PHP y se aplica a cualquier módulo CGI de back-end que desee utilizar en Apache.
La solución sugerida fue utilizar el módulo MPM de 'evento' que cambia la forma en que se envían las solicitudes a los hilos de trabajo.
Este MPM intenta solucionar el "problema de mantener vivo" en HTTP. Una vez que un cliente completa la primera solicitud, el cliente puede mantener la conexión abierta y enviar más solicitudes utilizando el mismo socket. Esto puede ahorrar una sobrecarga significativa en la creación de conexiones TCP. Sin embargo, Apache tradicionalmente mantiene un proceso / subproceso hijo completo esperando datos del cliente, lo que trae sus propias desventajas. Para resolver este problema, este MPM utiliza un hilo dedicado para manejar tanto los enchufes de escucha como todos los enchufes que están en un estado Keep Alive.
Desafortunadamente, eso tampoco funciona, porque solo se 'pospondrá' después de que se complete una solicitud, esperando una nueva solicitud del cliente.
PHP
Ahora, considerando el otro lado del problema, incluso si resuelve el problema de mantener un hilo por solicitud de cometa, aún necesitará un hilo de PHP por solicitud; esta es la razón por la que FastCGI no ayudará.
Necesita algo como Continuaciones que permitan que las solicitudes de cometas se reanuden cuando se observe el evento que los desencadenó. AFAIK, esto no es algo que sea posible en PHP. Solo lo he visto en Java: consulte el servidor Apache Tomcat .
Editar:
Aquí hay un artículo sobre el uso de un equilibrador de carga ( HAProxy ) para permitirle ejecutar tanto un servidor apache como un servidor habilitado para cometas (por ejemplo, jetty, tomcat para Java) en el puerto 80 del mismo servidor.