Christian Kruse: Webserver-Überlastung?

Beitrag lesen

Hallo Linuchs,

auf einem Webserver (eigene Hardware beim Provider) läuft eine öffentliche Domain, die z.Z. alle 3,3 s eine Webseite ausliefert, wohl zu 95% Bots. Ich lasse mir die Durchlaufzeit anzeigen, die varriiert extrem von 0,1 s bis 16 s auf derselben Seite. Was über 2 s läuft, meldet sich per Mail.

16s ist aber extrem lang. Wie misst du das?

Der Server versorgt auch andere Domains. Was passiert genau, wenn eine Anfrage kommt und noch an einer anderen Seite "gearbeitet" wird?

Das hängt vom MPM-Modul des Apache ab. Wenn Prefork benutzt wird, dann kann es schon vorkommen, dass gewartet werden muss weil alle Worker gerade zu tun haben. Bei einem Hit alle 3,3s klingt das aber nicht unbedingt danach.

Offenbar wird die Bearbeitung gestartet, denn die Zeit läuft. Und nach dem Start geht's in die Warteschlange und vorherige Aufgaben werden erst abgearbeitet?

Nur, wenn die Worker alle gleichzeitig beschäftigt sind. Und auch dann wären 16s viel zu viel, um es nur auf eine volle Queue zu schieben.

Ist Apache multi-tasking-fähig?

Ja 😂

Ich weiß nicht so recht, ob eine Adressliste mit 600 Zeilen wirklich "normal" 4,63 s braucht.

Das hängt von vielen Faktoren ab. Was ist das für eine Hardware? Wie genau arbeitet dein Programm? Wieviel Speicher muss beim erstellen der Liste reserviert & kopiert werden? Etc, pp. Performance-Analysen sind nicht trivial.

LG,
CK