Cómo probar el rendimiento de los servidores: una selección de varios benchmarks de código abierto

Continuamos nuestra serie de materiales dedicados a la prueba de rendimiento de servidores. Hoy hablaremos de un par de benchmarks probados con el tiempo que aún se mantienen y actualizan: NetPerf, HardInfo y ApacheBench.

Cómo probar el rendimiento de los servidores: una selección de varios benchmarks de código abierto
Foto — Peter Balcerzak — CC BY-SA

NetPerf

Es una herramienta para evaluar el ancho de banda de la red. Fue desarrollada por ingenieros de Hewlett-Packard. La herramienta incluye tiene dos archivos ejecutables: netserver y netclient. Para realizar la prueba, deben ejecutarse en diferentes máquinas. Por defecto, netperf utiliza el puerto 12865, pero se puede cambiar mediante el flag -p. La utilidad trabaja con TCP y UDP a través de BSD Sockets, DLPI, Unix Domain Sockets e IPv6.

Hoy en día, netperf forma parte del conjunto de herramientas de benchmarking Flent. También es utilizada por un número considerable de empresas de TI, como Red Hat. Así es como se describe el servicio netperf en uno de los ejemplos para evaluar el rendimiento de OpenShift:

apiVersion: v1
kind: Service
metadata:
  labels:
    app-name: netperf
  name: netperf
  namespace: your_project
spec:
  ports:
  - port: 12865
    protocol: TCP
    targetPort: 12865
  selector:
    app-name: netperf
  sessionAffinity: ClientIP
  type: ClusterIP

En el repositorio oficial se dice que netperf se distribuye bajo una licencia especial de Hewlett-Packard. Sin embargo, el autor de la utilidad, Rick Jones, afirma que está redactada en las mejores tradiciones del open source. También cabe destacar que en los últimos tiempos, las actualizaciones para netperf han salido con bastante poca frecuencia. Posiblemente, esto se deba a la madurez del producto.

Netperf tiene análogos, como por ejemplo, iperf2 y iperf3. Estos también permiten probar el ancho de banda de la red. El desarrollo de iperf3 comenzó después de que el repositorio de iperf2 cayera en desuso. La nueva versión está escrita desde cero y no es compatible con la implementación anterior, aunque contiene parte de su código. Curiosamente, después del lanzamiento de iperf3, el trabajo en iperf2 volvió a cobrar impulso. Al final, las dos herramientas tienen funcionalidades similares, pero al mismo tiempo distintas. Por ejemplo, iperf2 es multihilo, mientras que iperf3 es está trabajando solo de un hilo.

Hardinfo

Es una utilidad para recopilar información sobre hardware y el sistema operativo. Muestra datos sobre el funcionamiento de dispositivos en: PCI, ISA PnP, USB, IDE, SCSI, así como en puertos seriales y paralelos. Pero también se puede usar como benchmark y herramienta de monitoreo.

HardInfo ofrece varias pruebas. Por ejemplo, CPU Blowfish evalúa el rendimiento del procesador utilizando algoritmos criptográficos de cifrado simétrico de bloque. Hay CPU N-Queens — una prueba de combinatoria. El sistema resuelve el problema del ajedrez de colocar N reinas en un tablero de N x N casillas. Coloca las piezas de tal manera que ninguna de ellas pueda atacar a las otras. También vale la pena mencionar FPU FFT — una prueba para el cálculo rápido de la transformada discreta de Fourier y FPU Raytracing — el cálculo de trazado de rayos al renderizar una escena 3D.

El resultado en la mayoría de las pruebas se da en segundos, y, por lo tanto, cuanto menor sea, mejor. Todos los informes se presentan en formatos HTML y txt.

Inicialmente, la utilidad fue desarrollada en el marco del proyecto BerliOS. Este incluía una plataforma de alojamiento para aplicaciones de código abierto (como SourceForge) y varias bases de datos para la documentación y perfiles de desarrolladores de código abierto. BerliOS se cerró en 2014 debido a falta de financiación. Hoy en día, HardInfo se desarrolla gracias a los esfuerzos de entusiastas en un repositorio separado GitHub.

Es importante señalar que en el funcionamiento del sistema a veces hay errores. Se conocen errores de segmento que aparecen periódicamente y problemas conla detección de dispositivos USB y varios ApacheBench otros.

es una herramienta para pruebas de carga de servidores HTTP. ApacheBench (AB) se desarrolló para probar Apache, pero puede funcionar en cualquier otro servidor. La herramienta viene preinstalada en muchas distribuciones de Linux.

Victor Freitas

Cómo probar el rendimiento de los servidores: una selección de varios benchmarks de código abierto
Foto — La utilidad "bombardea" a los servidores con una gran cantidad de solicitudes. Para ejecutarlo, se necesita introducir el siguiente comando: — Unsplash

ab -n 100 -c 10 http://www.example.com/

Enviarás cien solicitudes GET (máximo diez de ellas se enviarán simultáneamente) al recurso de prueba. La salida del sistema mostrará el tiempo medio de procesamiento de solicitudes, el volumen total de datos transferidos, el ancho de banda y la cantidad de errores.

Hoy en día, alrededor de la utilidad se ha formado una extensa comunidad. Regularmente aparecen en la red

nuevas guías sobre cómo configurar y usar ApacheBench. Cabe señalar que AB tiene un análogo —

Apache jMeter Apache jMeter, pero con mayores capacidades. Por ejemplo, permite generar solicitudes desde varios ordenadores, gestionando el proceso desde uno de ellos. Además, el programa implementa mecanismos de autorización de usuarios virtuales y soporta sesiones de usuario. Esta herramienta es utilizada por muchas empresas de TI, incluidos proveedores de nube, como Qualys.

Cómo probar el rendimiento de los servidores: una selección de varios benchmarks de código abiertoEn 1cloud ofrecemos el servicio «Nube privada». Esto es el alquiler de infraestructura virtual con la posibilidad de personalizar rápidamente el parque servidores virtuales.
Cómo probar el rendimiento de los servidores: una selección de varios benchmarks de código abiertoNuestra nube está construida con hardware Cisco, Dell, NetApp. El equipo se ubica en varios centros de datos: DataSpace (Moscú), SDN/Xelent (San Petersburgo), Ahost (Almaty).

Fuente: habr.com

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster