2010-05-09 11 views
13

Mein Rails-Anwendung auf Thin-Server ausgeführt wird, die ich zum Benchmark will verwendet Apachebenchwie Query-String in URL mit Apache Bank angeben

der Befehl verwende ist

ab -n 1 -c 1 http://localhost:3001/welcome/search?query="doctor"&rad=5 

Aber dünner Server nicht nehmen diese url.Its geben

!! Invalid Request 

Kann jemand mir helfen, wie die uRL so zu geben, dass dünn die uRL mit Query-String akzeptiert

Antwort

4

Ihre Abfragezeichenfolge ist nicht richtig codiert. Entfernen Sie das doppelte Zitat. Wenn es nötig ist, müssen Sie es so senden,

ab -n 1 -c 1 http://localhost:3001/welcome/search?query=%22doctor%22&rad=5 
+0

ja Sie hatten Recht.Ich habe doppelte Anführungszeichen entfernt, so dass die ungültige Anfrage gelöst wurde. NEW Angenommen, meine Abfrage ist http: // localhost: 3001/Willkommen/Suche? Query =% 22medical% 20college% 22 & rad = 5, medizinische ist genommen, aber College ist nicht in Betracht gezogen, Wert 5 von rad ist nicht durch dünne genommen; Ich habe sogar versucht mit Substitution & mit% 26 es hat nicht funktioniert. – kshama

+2

& wird als Shell-Parameter interpretiert. Sie können die ganze URL in Anführungszeichen setzen und es wird funktionieren: 'ab -n 1 -c 1" http: // localhost: 3001/Willkommen/Suche? Query =% 22doctor% 22 & rad = 5 "' –

+0

Offensichtlich tut dies nicht arbeite mit ApacheBench2. Ich versuche folgendes: ab2 -n 8000 -c 100 "http: //xxx.xx.xxx.xx: 8000? Jsonp = CallbackFunktion & articeUrl = http% 3A% 2F% 2Fwww.cnn.com% 2F2010% 2FCRIME% 2F08 % 2F30% 2Fclemens.case% 2Findex.html% 2F " Fehler" ungültige URL "erhalten! –

26

Apache Benchmark wird nicht lösen „localhost“ aus der URL. Ändern Sie es in 0.0.0.0 oder 127.0.0.1 und zitieren Sie die gesamte URL, um Probleme mit dem kaufmännischen Und-Zeichen zu vermeiden. zB:

ab -n 1 -c 1 "http://0.0.0.0:3001/welcome/search?query=doctor&rad=5" 
3

Dies war für mich nicht funktioniert, obwohl diese Linie Arbeit tat

ab -n 1 -c 1 -B 127.0.0.1 "http://localhost:3001/some/stuff" 

Geist das Gehäuse!

+0

Super! Danke vielmals. – Alexander

Verwandte Themen