¿Qué beneficio se agrega al usar Gunicorn + Nginx + Flask?

Veo que la gente está ejecutando configuraciones como Nginx + Gunicorn + Flask.

¿Alguien puede explicar cuál es el beneficio de tener Gunicorn frente a Flask? ¿Por qué no solo correr Flask solo? ¿No consume más recursos teniendo Gunicorn + Flask en ejecución? ¿Gunicorn puede reiniciar la instancia de Flask cuando no responde?

¿Cuál es también el propósito de tener nginx encima de gunicorn? ¿No es suficiente Gunicorn? Una vez más, se gastan más recursos?

Creo que puede estar confundido, Flask no es un servidor web , es un marco y necesita algún tipo de servidor web, como Gunicorn, Nginx o Apache, para aceptar solicitudes HTTP con las que luego operará. La razón por la que las personas ejecutan Nginx y Gunicorn en conjunto es que además de ser un servidor web, Nginx también puede hacer conexiones proxy a Gunicorn, lo que brinda ciertos beneficios de rendimiento, esta es una buena respuesta que explica estos beneficios: https: // serverfault. com / questions / 220046 / why-is-setting-nginx-as-a-reverse-proxy-a-good-idea

EDITAR: Se agregó un enlace que contiene información sobre los beneficios de rendimiento de ejecutar Nginx como un proxy.