parallele HTTP Requests
Hallo NG,
ich habe einen PHP-Code der immer in die selbe Datei schreibt. Das
locking habe ich über separate lock-files (filename.lck) gelöst, die
nach dem schreiben wieder entfernt werden. Jetzt möchte ich testen ob
bei parallelen (bzw. nahezu parallelen Requests) zu unerwarteten Fehlern
kommt. Den Code selbst habe ich schon mit unzähligen
Error-Logging-Funktionen gespickt.
Was mir jetzt noch fehlt ist ein Tool, das ich auf den Code loslassen kann.
Mir schwebt da was Simples für die Kommandozeile vor, wobei ich als
Parameter nur URL und die Anzahl der parallelen Requests angeben muss -
z.B. http-requester http://host/script.php 100. Das ganze sollte auf
Linux oder Windows XP laufen.
Hat vielleicht jemand Erfahrungen mit solcherlei Tools oder eine Empfehlung?
Gruß Jacob
Re: parallele HTTP Requests
Jacob Hayn schrieb:
> Mir schwebt da was Simples für die Kommandozeile vor, wobei ich als
> Parameter nur URL und die Anzahl der parallelen Requests angeben muss -=
> z.B. http-requester http://host/script.php 100. Das ganze sollte auf
> Linux oder Windows XP laufen.
>
> Hat vielleicht jemand Erfahrungen mit solcherlei Tools oder eine Empfeh=
lung?
Mach' dir doch das Problem von Peter Gogolin zunutze, das er hier in der
Gruppe im Thread "cURL Batch Cronjobs parallele Verarbeitung?"
<news:6513l4F2au7uiU1 [at] mid.uni-berlin.de> beschrieben hat. Dann kannst du
das einfach mit Bordmitteln bewerkstelligen.
MfG
Niels
--
| http://www.kolleg.de =B7 Das Portal der Kollegs in Deutschland |
| http://www.bsds.de =B7 BSDS Braczek Software- und DatenSysteme |
| Webdesign =B7 Webhosting =B7 e-Commerce =B7 Joomla! Content Management =
|
------------------------------------------------------------ ------
Re: parallele HTTP Requests
Jacob Hayn schrieb:
> Hallo NG,
>
> ich habe einen PHP-Code der immer in die selbe Datei schreibt. Das
> locking habe ich über separate lock-files (filename.lck) gelöst, di=
e
> nach dem schreiben wieder entfernt werden. Jetzt möchte ich testen ob=
> bei parallelen (bzw. nahezu parallelen Requests) zu unerwarteten Fehler=
n
> kommt. Den Code selbst habe ich schon mit unzähligen
> Error-Logging-Funktionen gespickt.
>
> Was mir jetzt noch fehlt ist ein Tool, das ich auf den Code loslassen k=
ann.
>
> Mir schwebt da was Simples für die Kommandozeile vor, wobei ich als
> Parameter nur URL und die Anzahl der parallelen Requests angeben muss -=
> z.B. http-requester http://host/script.php 100. Das ganze sollte auf
> Linux oder Windows XP laufen.
>
> Hat vielleicht jemand Erfahrungen mit solcherlei Tools oder eine
> Empfehlung?
Entweder cURL anschauen oder wenn es einfach und simple sein soll den
"ab" (ApacheBenchmark) nehmen welcher bei Apache(Unix) dabei ist. Fuer
Windows musst du mal googlen da der in der Standarddistri nicht
mitgeliefert wird.
ab -c 20 -k "http://example.com/script.php?id=3D123"
Es gibt noch mehr Webserver Benchmarkprogramme, da du aber keinen
"Loadgenerator" brauchst welcher auch POST Requests,Cookies etc. kann
sollte "ab" fuer dich das richtige sein.
Gruss
Joerg
--
TakeNet GmbH, Geschaeftsfuehrer Wolfgang Meier
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
HRB Wuerzburg 6940 http://www.takenet.de
Re: parallele HTTP Requests
Joerg Behrens wrote:
> ab -c 20 -k "http://example.com/script.php?id=3D123"
Moin Joerg (und Niels auch),
das klingt sehr gut, jetzt hab ich ab noch nicht getestet aber es
scheint genau das zu sein, was ich gesucht habe.
Ich hatte mir auch das Problem von Peter Gogolin angesehen. Das hatte
mich zu einer Lösung mit wget und einer ordentlichen Anzahl paralleler
cronjobs inspiriert, aber der apache benchmark ist doch wesentlich
einfacher und lässt sich auch "mal eben schnell" in die konsole
hacken.
Gruß Jacob
Re: parallele HTTP Requests
jacobhayn [at] googlemail.com schrieb:
> Joerg Behrens wrote:
>> ab -c 20 -k "http://example.com/script.php?id=3D123"
> Moin Joerg (und Niels auch),
>
> das klingt sehr gut, jetzt hab ich ab noch nicht getestet aber es
> scheint genau das zu sein, was ich gesucht habe.
In meinem Beispiele fehlte die Anzahl der Requests "-n 1000" aber das
wird die die Hilfeseite dann schon sagen.
Gruss
Joerg
--
TakeNet GmbH, Geschaeftsfuehrer Wolfgang Meier
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
HRB Wuerzburg 6940 http://www.takenet.de
Re: parallele HTTP Requests
Joerg Behrens schrieb:
> In meinem Beispiele fehlte die Anzahl der Requests "-n 1000" aber das
> wird die die Hilfeseite dann schon sagen.
ja, ich hab mir schon den Link zur Dokumentation rausgesucht, bin aber
noch nicht zum Testen gekommen.
http://httpd.apache.org/docs/2.2/programs/ab.html
nochmals Danke und Gruß
Jacob