Uso de ALB para apuntar a contenedores PHP-FPM ECS

Uso de ALB para apuntar a contenedores PHP-FPM ECS

Me encantaría saber si esto es realmente posible, pero estoy seguro de haberlo visto demostrado por uno de nuestros antiguos TAM de AWS.

Estoy sirviendo contenedores PHP-FPM (puerto 9000) desde ECS que aloja una aplicación PHP. Estoy considerando reemplazar las cajas nginx con solo un ALB.

Básicamente, las solicitudes a través del puerto 80 en el ALB deben ejecutar el punto de entrada de la aplicación en el puerto 9000 con los datos de la solicitud original.

Intenté jugar con los grupos objetivo pero no puedo descubrir cómo realizar la misma funcionalidad ProxyPass que proporciona nginx.

es posible? Y, si es así, ¿cómo?

Respuesta1

Me encantaría saber si esto es realmente posible, pero estoy seguro de haberlo visto demostrado por uno de nuestros antiguos TAM de AWS.

Estoy esperando esta solución.

Según tengo entendido, he llegado a la conclusión de que PHP-FPM detrás de NGINX es la solución más sencilla. Razones:

  1. CGI rápidoes un protocolo binario para interconectar programas interactivos con un servidor web. Por lo tanto, el puerto 9000 expuesto por PHP-FPM no es adecuado directamente detrás de un ELB de AWS.
  2. Servidor web integrado de PHPno debe utilizarse en entornos de producción.
  3. Es una mala práctica permitir que el mismo servidor sea el servidor web y el servidor de aplicaciones. Los recursos del servidor de aplicaciones serán acaparados por el servidor web y viceversa. Cada servidor tiene sus beneficios. Usamos NGINX desde su prueba de batalla como servidor web. Usamos PHP-FPM como implementación principal de PHP FastCGI.No deberíamos usar un AK-47 para matar un ratón, deberíamos emplear una trampa para ratones.
  4. Las aplicaciones Django + Gunicorn detrás de AWS ELB funcionan sin problemas hasta que un cliente lento comienza a enviar solicitudes. NGINX facilita el trato con clientes lentos, ya que almacena en buffer y reenvía solicitudes completas (todos los paquetes TCP) a Gunicorn. Árbitro:Despliegue de Gunicorn. Esto también se aplica a PHP-FPM.
  5. NGINX ayuda a servir archivos estáticos con facilidad y los comprime usando GZIP. Dicho esto, los archivos estáticos deben entregarse utilizando un almacenamiento de objetos como S3.

información relacionada