Uruchamiam serwer internetowy za pomocą Apache 2.4, Mod_WSGI i Django. Przeciążenia serwera sporadycznie z powodu dużego ruchu. Chcę skonfigurować serwer tak, że odpowiada wstępnie ustaloną domyślną odpowiedzią na żądania zwrotne (tj. Żądania, które czekały w kolejce przez określony limit czasu). Jaki jest najlepszy sposób na to? Dodatkowo chcę utrzymywać połączenie przy życiu po wysłaniu odpowiedzi domyślnej.

Każda pomoc jest bardzo ceniona.

0
srinivas tunuguntla 22 listopad 2020, 01:30

1 odpowiedź

Najlepsza odpowiedź

Możesz skonfigurować mod_wsgi za pomocą krótkiego czasu, a następnie dostosuj błąd limitu czasu w Apache. Na przykład, jeśli chcesz, aby zdarzyć się po dziesięciu sekundach, możesz ustawić request-timeout=10 jako opcję WSGIDaemonProcess dyrektywy.

Następnie można skonfigurować Apache, aby wyświetlić niestandardowy komunikat o błędzie dla limitu czasu: ErrorDocument 504 "We're too busy right now, the hamsters are exhausted!" Możesz również skonfigurować niestandardową stronę HTML lub URL: HTTPS : //httpd.apache.org/docs/2.4/custom-Error.html.

Zrób to wszystko w VirtualHost i będzie lokalnie zasłonięty. Powodzenia!

1
FlipperPA 23 listopad 2020, 12:10