¿Cómo se carga la prueba de su aplicación?

22

¿Cuál es la forma más efectiva de cargar para probar la carga de su aplicación? El punto principal es determinar cuántos usuarios podría admitir al mismo tiempo con la aplicación aún ejecutándose a una velocidad razonable.

Jacob Schoen
fuente

Respuestas:

4

El software de prueba de carga más completo que he encontrado es HP LoadRunner (perdón por el enlace bit.ly pero el enlace HP es horrible y no funcionará correctamente). Es muy flexible y puede generar muchos tipos diferentes de informes a partir de las pruebas de carga. También puede hacer que un grupo de máquinas trabajen en conjunto para realizar la prueba de carga. No es que otras herramientas sean malas, pero hace que algo como Apache JMeter parezca un juguete.

Carson
fuente
No es necesario acortar la URL. También toma valor del sitio al que se vincula (si es un buen sitio, debería tener el impacto de rango)
Aiden Bell
1
@Aiden: los enlaces no son seguidos de todos modos.
Christian
5

httperf principalmente y también AB la herramienta Apache Benchmarking

(y una tonelada de instrumentación para detectar consultas duplicadas y errores de caché).

Es simple, efectivo y puede generar mucho tráfico desde una máquina quad-core + conectada a su servidor en gigabit ethernet. También tiene cosas interesantes como la limitación de velocidad.

Si quieres ponerte realmente elegante, puedes grabar y reproducir tráfico HTTP con httperf.

Aiden Bell
fuente
¿Se puede usar AB en otros servidores web?
milesmeow
¿Cómo puedes registrar el tráfico http con httperf?
razenha
4

Según se informa, la Herramienta de análisis de capacidad web de Microsoft (WCAT) es la herramienta elegida por el equipo de IIS

mvark
fuente
3

Voy a presentar cuatro conjuntos de criterios para que examines las herramientas, y hay muchos de ellos disponibles en el ámbito de código abierto y en los ámbitos comerciales para las aplicaciones de prueba de rendimiento.

  1. ¿Ejercerá mis interfaces en mi aplicación? Existen muchas herramientas que son gratuitas pero monolíticas de interfaz y pueden no ejercitar su aplicación por completo. Las herramientas comerciales tienen un mayor soporte de protocolo / interfaz que las de código abierto
  2. ¿El informe coincidirá con mis necesidades? Nada es más frustrante que ejecutar una prueba y luego tener que pasar días tratando de reunir los resultados en una forma significativa para el análisis y determinar si ha cumplido con sus requisitos o no. Una vez más, esta es un área donde las herramientas comerciales superan a las de código abierto.
  3. ¿Mi equipo tiene las habilidades técnicas para usar la herramienta? No querrá superar los obstáculos o el proceso de prueba de rendimiento, el análisis y luego otro idioma / herramienta para aprender al mismo tiempo. Ser realista.
  4. ¿Funcionará en mi infraestructura de prueba? Consulta los requisitos. Si se observa un SO y una versión en particular, úselo o no use la herramienta. Menos cosas son más frustrantes para el soporte de herramientas cuando alguien llama / envía un correo electrónico con un problema solo para descubrir que se han ignorado los requisitos de instalación y operación.

Los números 1-3 son críticos. Eche un vistazo a cualquiera de estos tres y es posible que haya comprado la herramienta comercial más cara y contratado a la consultora más cara para implementarla por usted: no quiere que lo atrapen clavando clavos con el extremo de un destornillador simplemente porque su jefe le dijo que la pistola de clavos era una herramienta costosa para la casa que le pidieron construir (Nota: las pistolas de clavos a menudo están disponibles para alquilar, al igual que las herramientas comerciales de prueba)

James Pulley
fuente
2

Grinder es un marco de prueba de carga de código abierto potente, flexible y programable. Se desarrolla activamente y tiene una curva de aprendizaje relativamente superficial en comparación con algunas de las otras opciones.

JasonBirch
fuente
1

Depende de lo complejo que sea; si es muy complejo, probablemente necesite algo más complicado, pero para un sitio web dinámico típico, usar un script que genere varias instancias de wget que soliciten páginas clave en su sitio web debería funcionar.

Thomas Bonini
fuente