Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 10851|Respuesta: 3

Prueba de estrés del sitio web Apache ab

[Copiar enlace]
Publicado en 14/6/2018 11:14:30 | | | |
AB es una abreviatura de ApacheBench.

El comando ab crea múltiples hilos de acceso concurrentes para simular que varios visitantes acceden a una dirección URL al mismo tiempo. Sus objetivos de prueba están basados en URLs, por lo que puede usarse para probar tanto el estrés de carga de apache como otros estrés del servidor web como nginx, lighthttp, tomcat, IIS, etc.

El comando ab tiene pocos requisitos para el ordenador que está emitiendo la carga, y no ocupa mucha CPU ni memoria. Sin embargo, causará una carga enorme en el servidor objetivo, y su principio es similar a los ataques de CC. También tienes que prestar atención a las pruebas y al usarlo tú mismo, porque si no, tendrás demasiada carga de golpe. Puede hacer que el servidor objetivo se quede sin recursos y, en casos graves, incluso provocar un fallo.

1. Introducción al banco apache

ApacheBench es una herramienta web de pruebas de estrés que incluye servidores Apache, abreviada como ab. AB también es una herramienta de línea de comandos con bajos requisitos nativos para iniciar cargas útiles, y se pueden crear muchos hilos de acceso concurrentes según el comando AB, simulando que varios visitantes acceden a una determinada dirección URL al mismo tiempo, para poder usarse para probar la presión de carga del servidor objetivo. En general, la herramienta AB es pequeña y sencilla, rápida de aprender y puede proporcionar los indicadores básicos de rendimiento que necesitas, pero no hay resultados gráficos ni puede ser monitorizada.



2. Instalación de bancos Apache

Primero, necesitas instalar el servidor Apache, descargar la dirección:El inicio de sesión del hipervínculo es visible.

Mi ordenador es un sistema Win10 de 64 bits, así que descargué "httpd-2.4.33-win64-VC15.zip", enlace:El inicio de sesión del hipervínculo es visible.

Se recomienda descargar la última versión, ya que las versiones anteriores de ab no soportan el parámetro -r.

3. Uso en el banco Apache

Entiende los parámetros

Descripción del parámetro:
Formato: ab [opciones] [http://]nombre de host[:p ort]/path

-n solicitudes Número de solicitudes a realizar //El número total de solicitudes iniciadas en esta prueba
-c concurrencia Número de múltiples solicitudes para realizar // Número de solicitudes (o concurrencia) generadas a la vez
-t límite de tiempo segundos para máximo. Esperar respuestas //El número máximo de segundos que se realiza una prueba por defecto.
-r No salir en el socket error de recepción.     Lanzar una excepción para continuar la tarea de prueba
-p postfile Archivo que contiene datos a POST // Un archivo que contiene datos que deben ser POST, en un formato de archivo como "p1=1&p2=2". El método de uso es -p 111.txt

-Encabezado tipo contenido T tipo contenido para POSTing
El encabezado de tipo Contenido usado para los datos POST, como -T "application/x-www-form-urlencoded". (co-p)
-v verbosidad ¿Cuánta información de solución de problemas hay que imprimir
Establece el nivel de detalle para mostrar la información: un valor de 4 o mayor mostrará la información de cabecera, un valor de 3 o mayor mostrará un código de respuesta (404, 200, etc.) y un valor de 2 o mayor mostrará advertencias y otra información. -V muestra el número de versión y sale.
-C atributo Añadir galleta, por ejemplo. -C "c1=1234,c2=2,c3=3" (repetible)
-C cookie-name=value Añadir una cookie a la línea request:. La forma típica es un par de parámetros nombre=valor. Este parámetro puede repetirse, dividido por una coma.
Consejo: Puedes usar el principio de implementación de sesión para pasar el parámetro JSESSIONID y así lograr la función de mantener la sesión, como -C "c1=1234, c2=2, c3=3, JSESSIONID=FF056CD16DA9D71CB131C1D56F0319F8".
-w Imprimir resultados en tablas HTML // Resultados de salida en formato de tabla HTML. Por defecto, es una tabla con dos columnas de ancho sobre un fondo blanco.
-Uso CABEZA en vez de GET
-x atributos Cadena para insertar como atributos de la tabla
-y atributos String to insert como atributos tr
-z atributos String to insert como atributos td o th
-Atributo H Añadir cabecera arbitraria, por ejemplo. 'Aceptar-Codificar: gzip' Insertado después de todas las líneas normales de cabecera. (repetible)
-Un atributo Añadir Autenticación WWW básica, los atributos
son nombres de usuario y contraseña separados por dos puntos.
-P atributo Añadir Autenticación Básica de Proxy, los atributos son un nombre de usuario y contraseña separados por dos puntos.
-X proxi:puerto Proxyserver y número de puerto a usar
-V Imprimir número de versión y salida
-k Usar la función HTTP KeepAlive
-d No muestres los percentiles en la mesa.
-S No muestres estimadores de confianza ni advertencias.
-g nombre de archivo Salida de datos recogidos en formato gnuplet.
-e Archivo de salida del archivo CSV con porcentajes servidos
-h Mostrar información de uso (este mensaje)

Hay muchos parámetros, generalmente podemos usar parámetros -c y -n. Por ejemplo:


Descomprime el "httpd-2.4.33-win64-VC15.zip", ve a \Apache24\bin y arránzalo con la línea de comandos cmd, como se muestra en la figura siguiente:



SSL no compilado en; no soporta https: SSL no se compila en; No hay soporte para https, lo que significa que la web no soporta https.

Resultados de las pruebas:

C:\Users\itsvse_pc\Downloads\httpd-2.4.33-win64-VC15\Apache24\bin>ab -c 10 -n 1000 https://www.itsvse.com
SSL no compilado en; Sin soporte para HTTPS

C:\Users\itsvse_pc\Downloads\httpd-2.4.33-win64-VC15\Apache24\bin>ab -c 10 -n 1000 http://www.itsvse.com/
Esto es ApacheBench, Versión 2.3 <$Revision: 1826891 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd,El inicio de sesión del hipervínculo es visible.
Licenciado a The Apache Software Foundation,El inicio de sesión del hipervínculo es visible.

Benchmarkingwww.itsvse.com(ten paciencia)
Completó 100 solicitudes
200 solicitudes completadas
Completó 300 solicitudes
Completó 400 solicitudes
Completó 500 solicitudes
Completadas 600 solicitudes
Completó 700 solicitudes
Completó 800 solicitudes
Completó 900 solicitudes
Completó 1000 solicitudes
Terminé 1000 solicitudes


Software de servidor:
Nombre del servidor de anfitriones:        www.itsvse.com
Puerto del servidor: 80

Ruta del documento: /
Longitud del documento: 178 bytes

Nivel de concurrencia: 10
Tiempo de los exámenes: 44,916 segundos
Solicitudes completas: 1000
Solicitudes fallidas: 0
Respuestas que no son de 2xx: 1000
Total transferido: 349000 bytes
Transferencia en HTML: 178.000 bytes
Peticiones por segundo: 22,26 [#/seg] (media)
Tiempo por solicitud: 449.164 [ms] (media)
Tiempo por solicitud: 44,916 [ms] (media, en todas las solicitudes concurrentes)
Tasa de transferencia: 7,59 [Kbytes/seg] recibida

Tiempos de conexión (ms)
              Media[+/-sd] Máximo mediana
Connect:       32   45  60.1     37    1439
Processing:    35  401 185.6    356    1795
Waiting:       34  245 199.6    228    1791
Total:         69  446 195.4    397    1830

Porcentaje de las solicitudes atendidas dentro de un determinado periodo (ms)
  50%    397
  66%    415
  75%    439
  80%    461
  90%    535
  95%    623
  98%   1563
  99%   1784
100% 1830 (la petición más larga)

Análisis de parámetros:

Ruta del documento: página de prueba
Longitud del documento: El tamaño de la página
Nivel de concurrencia: El número de concurrencias probadas simultáneamente
Tiempo necesario para las pruebas: La duración de toda la prueba
Solicitudes completas: El número de solicitudes completadas
Solicitudes fallidas: El número de solicitudes fallidas
Errores de escritura: 0
Total transferido: La cantidad de red transferida a lo largo del proceso
HTML transferido: La cantidad de contenido HTML transferido a lo largo del proceso
Peticiones por segundo: Una de las métricas más importantes, equivalente a transacciones por segundo en LR y media entre paréntesis, indica que esto es una media
Tiempo por solicitud: Las dos métricas más importantes, equivalentes al tiempo medio de respuesta de transacción en LR, la media entre paréntesis indican que esto es un promedio
Tiempo por solicitud: El promedio del tiempo real de ejecución para cada solicitud de conexión
Tasa de transferencia: Tráfico medio por segundo en la red, lo que puede ayudar a descartar el problema del exceso de tráfico de red que causa largos tiempos de respuesta





Anterior:Utiliza expresiones lambda en Linq to Entity para implementar Left Join y Join
Próximo:asp.net mvc Sufijo de mapeo de rutas .html
 Propietario| Publicado en 14/6/2018 11:16:33 |
 Propietario| Publicado en 27/5/2019 9:17:09 |
ab -n 800 -c 800  El inicio de sesión del hipervínculo es visible.
-nemitido800Solicitudes,-cSimulación800Concurrencia, equivalente a 800 personas visitando al mismo tiempo, seguida de la URL de la prueba)
 Propietario| Publicado en 27/5/2019 9:20:46 |
También puedes realizar una prueba de concurrencia de estrés a través de Fiddler, abrir la herramienta Fiddler y bloquear todas las solicitudes, como se muestra en la figura siguiente:


Selecciona la sesión que quieres repetir la solicitada y luego pulsaShift+R, aparecerá Repite esta petición ¿cuántas veces? (¿Cuántas veces repites esta petición?) )

Introduce el número de veces que quieres repetir la petición, aquí he rellenado 5, Fiddle te ayudará a repetir el enlace 5 veces, como se muestra en la figura de abajo:



Para más consejos sobre cómo manejar un violín, consulta el manual:

Manual de chino .zip Fiddler descargar
https://down.itsvse.com/item/12839.html


Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com