• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Benchmark Script.

Deepblue

Member
Hallo,

Für ein neues Projekt müsste ich die Leistungsfähigkeit unseres Servers testen. Kann man n kleines Shell Script schreiben, das exakt 10 mal "php test.php" aufruft?
Und dann permanent immer 10 dieser scripte offen hat?

Dies soll sozusagen die CPU-Last zeigen, wenn 10 User gleichzeitig zugreifen...

Ist das allein mit der Shell realisierbar? Wäre echt fein
 

framp

Moderator
Teammitglied
Das ist ein recht kleine Script - bestens geeignet um sich in die bash shell einzuarbeiten :wink: .

Allerdings sollte dann noch ein zufällige Thinktime der Benutzer eingebaut werden.
 

sparrow

Member
Und vielleicht solltest du das ganze zusätzlich noch auf einem Client statt auf dem Server ausführen lassen.
Dann prüfst du nicht nur die Prozessorlast sondern bekommst auch gleich eine Ahnung wie es mit der Bandbreite der Netzwerkverbindung steht, etc.
 

gameboy

Hacker
Hallo Deepblue,

für das eigentliche Abrufen der PHP-Seite vom Webserver würde ich wahlweise eins der Kommandozeilen-Programme wget oder curl verwenden. Die Aufgaben des zu erstellenden Shell- oder Perl-Skripts beschränken sich dann im einfachsten Fall auf das "Drumherumbauen" einer Schleife sowie die Realisierung entsprechender Wartezeiten (Thinktimes) zwischen zwei aufeinanderfolgenden Seiten-Aufrufen.

Wenn es nicht nur darum geht, den Server unter Last zu setzen, sondern auch auszuwerten, wie sich der Server bei bestimmter Last verhält, wäre es zudem wahrscheinlich sinnvoll, zumindest die vom Server gelieferten Status-Codes (z.B. 200 für OK, 500 für interner Serverfehler, etc.) sowie die Antwortzeiten durch das Skript protokollieren zu lassen. Wenn man zudem sichergehen will, daß der Seiteninhalt (der ja bestimmt dynamische Elemente enthält), korrekt bzw. vollständig ist, kann man diesen ebenfalls loggen, um ihn z.B. mit Hilfe regulärer Ausdrücke auf das Vorhandensein bestimmter Muster zu verifizieren.

Viele Grüße,
gameboy.
 
OP
Deepblue

Deepblue

Member
Danke für die Überlegungen. Das mit dem clientseitigen Benchmark wird jedoch nicht klappen, da ich immo im Ausland bin und der DNS der Providers rumzickt und viel zu lange benötigt.
Von daher versuchs ich erstmal serverseitig.

Falls dann noch konkrete Fragen sind, melde ich mich nochmals. Danke
 
Oben