apachebench - benchmark - apache bench
Herramienta de prueba de carga HTTP para URLs variables (5)
Apache Bench for Multiple URL no funciona para URL largas.
Cualquiera que sepa sobre una herramienta de prueba de carga como "Apache Bench" para enviar URL variables. (Mismo servidor, pero diferentes cadenas de consulta)
Por ejemplo,
ab -text list.txt -n 1000 http://test.com/search?
list.txt
name=abc&age=10
name=pqr&age=20
anything=anything&age=30
......
Nota: en realidad no hay tal opción -texto en el banco apache
Prueba el asedio ya que ofrece lo que necesitas. Podría crear archivos de URL que usen los parámetros de bash para que no tenga que repetirlos. También admite autenticación básica, POST, una URL de inicio de sesión y mucho más.
siege -f urls.txt
urls.txt:
URL=https://www.example.com/
$(URL)index.php?ab=1
$(URL)site.php?different=12
Puede encontrar más aquí: http://www.joedog.org/siege-home/
Puede usar este siguiente proyecto apachebench para múltiples URLs Apache Bench para múltiples URL
Admite múltiples solicitudes de URL para ApacheBench. Puede establecer la lista de URL como ''-L nombre de archivo'' y también confirmar la respuesta de la longitud del documento para cada solicitud.
Si está preparado para obtener el código fuente de Apache y trasladar el parche a http://chrismiles.livejournal.com/21720.html a la versión actual de la fuente ab.c de Apache (se necesita algo de comodidad con C, pero no mucho), debería obtener el equivalente de su parámetro -text
en ab (en realidad, tiene la capacidad de adjuntar a sus solicitudes, lo que es bueno para realizar pruebas POST en las que solo desea variar un subconjunto de los parámetros).
Actualmente estoy probando esto por mí mismo, por lo que el jurado aún está deliberando ... pero los primeros indicadores indican que este enfoque funciona bien.
desde una línea de comando en windows:
for /F %q in (list.txt) DO ab -n 1000 https://test.com/search?%q
No sé Apache Bench ni cómo recopila sus datos. Mi enfoque probablemente iniciará una nueva recopilación de datos para cada línea en list.txt, que es algo que quizás no desee. Tendrás que agregar los resultados de diferentes carreras a mano.
(depurar:
for /F %q in (list.txt) DO echo ab -n 1000 https://test.com/search?%q
el cual emitirá en la consola la sentencia que se ejecutará)