
Abbildung 1: Das mannigfaltig konfigurierbare, Ping-ähnliche Tool HTTPing misst das Antwortverhalten von Webservern, auf denen man keine Root-Rechte hat.
Wartezeiten sind immer ein Gegenstand subjektiven Empfindens. Das behauptet Magazin-Autor Charly Kühnast nicht nur, weil ihm sein letzter Zahnarztbesuch ausgesprochen lang vorkam.
Zwischen meinen Dentistensitzungen habe ich mich eher mit dem Zeitempfinden meiner User zu befassen. Wenn ein Webserver träge reagiert, bekomme ich ein “Boah, ist das lahm heute!” zu hören. Zickt eine meiner eigenen Maschinen, ist es natürlich leicht, direkt auf dem Server nach dem Rechten zu sehen. Komplizierter wird die Diagnose, wenn ein fremder Rechner lahmt, den ich nur per HTTP erreichen kann.
Geeignete Überwachnungssoftware wie Smokeping ist keine Lösung für “mal eben”, was auch für Basteleien mit Wget, Netstat und Time zutrifft. HTTPing [1] ist hierfür das eleganteste Tool. Es setzt »GET«- oder »HEAD«-Anfragen an den angeschlagenen Webserver ab und protokolliert, welche Antworten er wie schnell gibt. Seinen Namen verdankt HTTPing einigen Kommandozeilen-syntaktischen Ähnlichkeiten zu ICMP-Ping. Im einfachsten Fall übergebe ich HTTPing eine URL und lasse es von der Leine: »httping -g http://kuehnast.com«. Nun stellt es eine »HEAD«-Anfrage pro Sekunde an den Server, bis ich per [Ctrl]+[C] unterbreche. Die Ausgabe sieht dann wie in Listing 1 aus.
Klemmt’s am Schlüssel?
Schon bei diesem einfachen Test sehe ich, ob und wie schnell der Server die Anfragen beantwortet. Jedoch möchte ich »GET«- und keine »HEAD«-Requests. Das erledigt der Parameter »-G«. Außerdem werde ich mit »-l« erfahren, wie sich die Zugriffszeiten bei HTTPS ändern. In Listing 2 ist zu sehen, wie sich die SSL-Verschlüsselung auf die Antwortzeiten auswirkt. Zusätzlich interessiert mich der Statuscode, den der Server zurückgibt. Neben dem »200 OK« soll HTTPing auch den Code 304 »Not modified« als erfolgreichen Connect werten. Das Kommando heißt jetzt:
httping -s -o 200,304 -G -l -g https://kuehnast.com
Wie erwähnt haben einige HTTPing-Optionen den gleichen Effekt wie bei ICMP-Pings: Der Parameter »-i« regelt das Intervall zwischen den Pings in Sekunden. Werte kleiner als eine Sekunde interpretiert HTTPing als “sooft wie möglich”. Der Parameter »-f« (flood) hat den gleichen Effekt. Das Überfluten von Webservern ist aber selten sinnvoll und belastet Freundschaften zu deren Admins.
Mit dem Parameter »-c 10« limitiere ich auf zehn Requests und brauche HTTPing nicht mehr per Tastatur abzuwürgen. Die Kontrolle des Timeout ist manchmal von Bedeutung, wenn HTTPing aus einem Skript heraus startet. Per Default gibt HTTPing einen Verbindungsversuch nach 30 Sekunden auf. Ich setze diesen Wert meist per »-t 10« auf zehn Sekunden herunter (siehe Abbildung 1). Denn ein Webserver, der nicht innerhalb von zehn Sekunden antwortet, hat definitiv ein echtes Problem – nicht nur ein empfundenes. (jk)

Abbildung 1: Das mannigfaltig konfigurierbare, Ping-ähnliche Tool HTTPing misst das Antwortverhalten von Webservern, auf denen man keine Root-Rechte hat.
|
Listing 1: »httping |
|---|
01 PING kuehnast.com:80 (http://kuehnast.com): 02 connected to kuehnast.com:80, seq=0 time=8.57 ms 03 connected to kuehnast.com:80, seq=1 time=3.56 ms 04 connected to kuehnast.com:80, seq=2 time=4.24 ms 05 --- http://kuehnast.com ping statistics --- 06 3 connects, 3 ok, 0.00% failed 07 round-trip min/avg/max = 3.6/5.5/8.6 ms |
|
Listing 2: »httping -G -l |
|---|
01 # httping -G -l -g https://kuehnast.com 02 [...] 03 connected to kuehnast.com:443, seq=0 time=96.33 ms 04 connected to kuehnast.com:443, seq=1 time=95.38 ms 05 connected to kuehnast.com:443, seq=2 time=95.14 ms 06 [...] |
|
Infos |
|---|
|
[1] HTTPing: [http://www.vanheusden.com/httping/] |
Copyright © 2002 Linux New Media AG






