Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision cc77f3ed

Von Moritz Bunkus vor mehr als 8 Jahren hinzugefügt

  • ID cc77f3ed3e18afe4e0a28005fafe0c6521d6ea51
  • Vorgänger 028ea578
  • Nachfolger 7c920e23

Request handling: bei zu hohem Speicherverbrauch erst flushen, dann beenden

Wenn sich das Script sofort beendet, dann werden Daten nicht an den
Webserverprozess geschickt und der wiederum schickt eine unschönen
Internal Server Error an den Client.

Daher zuerst den Request vollständig an den Server schicken und damit
den laufenden Request abschließen, bevor sich der Prozess beendet.

Unterschiede anzeigen:

dispatcher.fpl
64 64
my $request = FCGI::Request();
65 65
while ($request->Accept() >= 0) {
66 66
  $dispatcher->handle_request($request);
67
  exit if _memory_usage_is_too_high();
67
  if (_memory_usage_is_too_high()) {
68
    $request->Flush();
69
    last;
70
  }
68 71
}
69 72

  
70 73
1;

Auch abrufbar als: Unified diff