mod_fcgid: multi-threaded FastCGI jetzt oder in einer geplanten Zukunft?

9

Die Tatsache bisher

Laut " mod_fcgi ist KEIN Ersatz für mod_fastcgi " und " Probleme mit der mod_fcgid- und multi-threaded FastCGI-Anwendung ", mod_fcgid , ist nicht darauf ausgelegt zu erwarten, dass FastCGI-Server mehrere Anforderungen gleichzeitig verarbeiten können, dh nicht darauf ausgelegt sind, dass FastCGI-Server mit mehreren Threads arbeiten.

Der ehemalige sagt:

  

Sie unterstützen beide das veröffentlichte "FastCGI" -Protokoll, aber   Wie sie ihre FastCGI-Server steuern, ist sehr unterschiedlich.   mod_fcgid entfernt FastCGI-Server schnell und startet   neue.

Letzteres sagt:

  

es scheint, mod_fcgid ist nicht bewusst, dass mein Server   ist multi-threaded und kann mehr als eine Anfrage bearbeiten.

Das sind nur zwei Zitate unter anderen, es gibt welche woanders.

Die fortlaufende Ausgabe

Beim Threading geht es nicht nur um das Speichern von CPU und Arbeitsspeicher, sondern auch um den Aufwand für die Erstellung eines neuen Prozesses (das Erstellen eines Threads ist bekanntermaßen leichter als das Erstellen eines Prozesses), der durch die Leistung von Hardware oder Betriebssystem gemildert werden kann. Dies ist auch eine logische Angelegenheit, die weniger leicht zu mildern ist: Threads gehören demselben Prozess an, das ist nicht nur Leistung, sondern auch Logik, z. Prozess kann nicht teilen, was Threads teilen könnten, da der Prozess isoliert läuft (Modulo IPC, aber das ist nicht das Gleiche).

Zumindest aus diesem logischen Grund könnte die Frage des multi-threaded FastCGI-Servers aufgeworfen werden. Ein FastCGI-Server kann einen Kontext enthalten (der groß und teuer sein kann, um ihn zwischen Prozessen zu teilen), der für alle Anforderungshandler global ist, wenn er als Multi-Thread-Server ausgelegt ist. Wenn ein neuer Prozess für jede gleichzeitige Anforderung ausgehändigt wird, kann kein gemeinsamer Kontext mehr sichergestellt werden.

Die Frage

Sind die beiden obigen Zitate immer noch wahr (einer ist 2011 datiert, der andere 2010)? Ich habe im Internet nach dem Thema gesucht, konnte aber nichts Relevantes finden. Wenn es immer noch wahr ist, wird es dann immer wahr sein, oder gibt es einen erwarteten Plan für mod_fcgid , um Multi-Thread-FastCGI-Server zu kennen und zu akzeptieren, dass sie mehrere gleichzeitige Anfragen verarbeiten können?

    
Hibou57 25.03.2013, 19:47
quelle

1 Antwort

3

Ich kann Ihre genauen Fragen zu mod_fcgid nicht beantworten, aber Apache ist weitergegangen und die bevorzugte Methode, die jetzt in Apache 2.4 ist, ist mod_proxy_fcgi, Ссылка .

Es verarbeitet mehrere gleichzeitige Anfragen. In der Regel können Sie Anfragen an den php-fpm-Handler übergeben.

    
troseman 10.01.2014 05:42
quelle