2012-01-12 20 views
20

Każdy wie o narzędziu do testowania obciążenia, takim jak "Ławka Apache", do wysyłania zmiennych adresów URL. (tym samym serwerze, ale różni Query Strings)Narzędzie do testowania obciążenia HTTP dla zmiennych adresów URL

Na przykład

ab -text list.txt -n 1000 http://test.com/search? 

lista.txt

name=abc&age=10 
name=pqr&age=20 
anything=anything&age=30 
...... 

Uwaga: Właściwie istnieje opcja ma takiego -text w apachebench

Odpowiedz

18

Spróbuj oblężenia, ponieważ oferuje to, czego potrzebujesz. Można tworzyć pliki URL, które używają parametrów podobnych do bash, aby nie trzeba było się powtarzać. Obsługuje również podstawowe uwierzytelnianie, POST, adres URL logowania i wiele więcej.

siege -f urls.txt 

urls.txt:

URL=https://www.example.com/ 
$(URL)index.php?ab=1 
$(URL)site.php?different=12 

Można znaleźć więcej tutaj: http://www.joedog.org/siege-home/

+0

Twój przykład urls.txt powoduje usterkę Seg w moim przypadku. Musiałem usunąć vary i zakodować adres URL, więc zadziałałoby to dla mnie. To wygląda bardziej na błąd oblężenia. –

3

z wiersza poleceń w systemie Windows:

for /F %q in (list.txt) DO ab -n 1000 https://test.com/search?%q 

Nie znam ławki Apache ani sposobu gromadzenia danych. Moje podejście prawdopodobnie rozpocznie nową kolekcję danych dla każdej linii w liście.txt, która jest czymś, czego nie chcesz. Musisz ręcznie zebrać wyniki różnych przebiegów.

(do debugowania:

for /F %q in (list.txt) DO echo ab -n 1000 https://test.com/search?%q 

który wyświetli na konsoli stwierdzeniem, że będzie wykonywał)

+0

To nie dla mnie. określony skrypt (php/servlet) otrzymuje puste parametry. – sura2k

+0

uruchamiasz to z linii poleceń lub z pliku poleceń? W pliku poleceń zamień% q na %% q (dwa razy). – rene

+0

Zapomniałem powiedzieć. A co jeśli jest to https? – sura2k

1

Jeśli jesteś przygotowany, aby uzyskać kod źródłowy Apache i port plaster na http://chrismiles.livejournal.com/21720.html do prądu wersja źródła ab.c Apache (trochę komfortu z C, ale niewiele), powinieneś uzyskać ekwiwalent swojego parametru -text w ab (w rzeczywistości masz możliwość dołączania do swoich żądań, co jest dobre dla stanowisk POST, w których tylko Ty jesteś chcesz zmienić podzbiór parametrów).

Obecnie próbuję tego samodzielnie, więc jury nadal nie działa ... ale wczesne wskaźniki wskazują, że to podejście działa ładnie.

+1

Czy ktoś próbował go użyć i może dzielić się doświadczeniami? To stary kod ... –

7

tej można użyć poniższy apachebench projektami dla wielu adresów URL Apache Bench for Multiple URL

Obsługiwane Wielu próśb URL dla apachebench. Możesz ustawić listę adresów URL jako "-L filename", a także potwierdzić odpowiedź na długość dokumentu dla każdego żądania .

-1

Ławka Apache dla wielu adresów URL nie działa dla długich adresów URL.

+7

Co to jest "długi URL"? –

Powiązane problemy