nginx und Perl: FastCGI vs Reverse Proxy (PSGI / Starman)

Heutzutage scheint hinter einem Nginx-Webserver, der Anfragen an einen FastCGI-Daemon oder einen PSGI-fähigen Webserver (z. B. Starman) weiterleitet, eine sehr beliebte Wahl für die Ausführung von Perl-Webanwendungen zu stehen.

Es gab viele Fragen, warum man dies im Allgemeinen tun würde (z. B. Warum Nginx mit Catalyst / Plack / Starman verwenden?) und die Antworten scheinen in beiden Fällen zuzutreffen (z. B. Zulassen, dass Nginx statischen Inhalt bereitstellt, Anwendungsserver einfach neu startet, Lastenausgleich usw.)

Ich bin jedoch speziell an den Vor- und Nachteilen der Verwendung von FastCGI im Vergleich zu einem Reverse-Proxy-Ansatz interessiert. Es scheint, dass Starman allgemein als der schnellste und beste Perl-PSGI-Anwendungs- / Webserver auf dem Markt gilt, und ich habe Probleme, die Vorteile der Verwendung von FastCGI überhaupt zu erkennen. Beide Ansätze scheinen zu stützen:

UNIX-Domain-Sockets sowie TCP-Sockets Server im Gabel- / Prozessmanager-Stil sowie nicht blockierende ereignisbasierte Server (z. B. AnyEvent-Server).Signalverarbeitung / ordnungsgemäßer Neustart PSGI

Ebenso ist die Nginx-Konfiguration für beide Optionen sehr ähnlich.

So warum würden Sie eine über die andere wählen?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage