Belastungstest für Webservice
Steffen Grautz
- software
Tagchen
Nach einigen Spielereien mit Load Balancer, Cluster für Webservice mit lastiger Datenbank würde ich gerne einen Belastungstest durchführen.
Wisst ihr, wie ich ohne Kostenaufwand eine möglichst realistische Situation nachstellen kann, wo z.B. 500 verschiedene Website Aufrufe pro Minute testen kann?
Da ich mir auch Rückschlüsse auf die Bandbreite, Reaktionszeit usw. erhoffe, wird es nicht "realistisch" sein, ein kleines Bot Script zu schreiben, das von wenigen PCs die Seitenaufrufe tätigt. Oder lässt sich für den Apache und auch für MySQL festlegen, dass jeder Request/Select behandelt wird, als wäre es der "erste"?
Rufe ich nämlich ein und dieselbe DB Anfrage erneut auf, geht es meistens wesentlich schneller dank Caching usw. was in diesem Fall keineswegs erwünscht ist...
Gute Woche
Moin!
Wisst ihr, wie ich ohne Kostenaufwand eine möglichst realistische Situation nachstellen kann, wo z.B. 500 verschiedene Website Aufrufe pro Minute testen kann?
Du suchst Dir einen eben so gut angebundenen Rechner (z.B. einen anderen Webserver) und setzt die 500 Aufrufe/Minute mit wget ab.
Von Hand:
#!/bin/sh
wget -d -O /dev/null http://server/webseite?parameter001 2> protokoll001 &
wget -d -O /dev/null http://server/webseite?parameter002 2> protokoll002 &
...
obiges generierst Du mit einem Skript oder einem Editor und führst es aus.
2. Du sorgst dafür, dass die Seite bei heise.de in einem viel beachteten Artikel verlinkt wird und hoffst, dass der hot-Test klappt, der Server also nicht zusammenbricht.
3. Möglicherweise hilft Dir eine "große Firma" und zwar ohne dass Du diese vorher bittest. Um den Test zu beenden schickst Du ein Fax an ein Gericht.
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix
Hi,
Wisst ihr, wie ich ohne Kostenaufwand eine möglichst realistische Situation nachstellen kann, wo z.B. 500 verschiedene Website Aufrufe pro Minute testen kann?
Rufe ich nämlich ein und dieselbe DB Anfrage erneut auf, geht es meistens wesentlich schneller dank Caching usw. was in diesem Fall keineswegs erwünscht ist...
Vielleicht hilft dir ab weiter, dass Apache-Benchmarking-Tool.
Dort kann man ggf. einstellen, dass nicht immer derselbe Service abgefragt wird, sondern kann ihm bestimmt auch (sich ändernde) Parameter übergeben.
Bis die Tage,
Matti