Comment tester les performances des serveurs : un aperçu de plusieurs benchmarks open source

Nous poursuivons notre série d'articles consacrée aux tests de performance des serveurs. Aujourd'hui, nous allons parler de quelques benchmarks éprouvés qui sont encore pris en charge et mis à jour : NetPerf, HardInfo et ApacheBench.

Comment tester les performances des serveurs : un aperçu de plusieurs benchmarks open source
Photo — Peter Balcerzak — CC BY-SA

NetPerf

C'est un outil d'Ă©valuation de la bande passante rĂ©seau. Il a Ă©tĂ© dĂ©veloppĂ© par des ingĂ©nieurs de Hewlett-Packard. L'outil inclut se compose de deux exĂ©cutables : netserver et netclient. Pour effectuer le test, il faut les exĂ©cuter sur des machines diffĂ©rentes. Par dĂ©faut, netperf utilise le port 12865, mais il peut ĂȘtre remplacĂ© Ă  l'aide du drapeau -p. L'utilitaire fonctionne avec TCP et UDP sur BSD Sockets, DLPI, Unix Domain Sockets et IPv6.

Aujourd'hui, netperf fait partie de la suite d'outils de benchmarking Flent. De plus, il est utilisé par un grand nombre d'entreprises IT, par exemple Red Hat. Voici à quoi ressemble la description du service netperf dans un des exemples d'évaluation des performances d'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

Dans le dĂ©pĂŽt officiel, il est indiquĂ© que netperf est distribuĂ© sous une licence spĂ©ciale Hewlett-Packard. Cependant, l'auteur de l'outil — Rick Jones — affirme qu'il est conçu dans les meilleures traditions open source. Notons Ă©galement que derniĂšrement, les mises Ă  jour de netperf ont Ă©tĂ© plutĂŽt rares. Cela peut ĂȘtre dĂ» Ă  la maturitĂ© du produit.

Netperf a des analogues — par exemple, iperf2 et iperf3. Ils permettent aussi de tester la bande passante rĂ©seau. Le dĂ©veloppement d'iperf3 a commencĂ© aprĂšs que le dĂ©pĂŽt d'iperf2 a dĂ©clinĂ©. La nouvelle version a Ă©tĂ© Ă©crite de zĂ©ro et n'est pas compatible avec l'implĂ©mentation prĂ©cĂ©dente, bien qu'elle contienne une partie de son code. Fait intĂ©ressant, aprĂšs la sortie d'iperf3, le travail sur iperf2 a redĂ©marrĂ©. En fin de compte, les deux outils possĂšdent une fonctionnalitĂ© similaire mais en mĂȘme temps diffĂ©rente. Par exemple, iperf2 est multithread, tandis qu'iperf3 est sur uniquement Ă  un seul fil.

Hardinfo

C'est un utilitaire pour collecter des informations sur le matĂ©riel et le systĂšme d'exploitation. Il affiche les donnĂ©es concernant le fonctionnement des dispositifs sur : PCI, ISA PnP, USB, IDE, SCSI, ainsi que sur les ports sĂ©rie et parallĂšle. Mais il peut Ă©galement ĂȘtre utilisĂ© comme un benchmark et un outil de surveillance.

HardInfo propose plusieurs tests. Par exemple, le CPU Blowfish Ă©value les performances du processeur Ă  l'aide d'algorithmes cryptographiques de chiffrement symĂ©trique par blocs. Il y a CPU N-Queens — un test de combinatoire. Le systĂšme rĂ©sout le problĂšme des N reines sur un Ă©chiquier N x N. Il place les piĂšces de maniĂšre Ă  ce qu'aucune d'elles ne puisse attaquer les autres. Il convient Ă©galement de mentionner le FPU FFT — test pour le calcul rapide de la transformĂ©e de Fourier et le FPU Raytracing — calcul de la traçage de rayons lors du rendu d'une scĂšne 3D.

Le résultat de la plupart des tests est donné en secondes et, par conséquent, plus il est petit, mieux c'est. Tous les rapports sont présentés au format HTML et txt.

À l'origine, l'utilitaire a Ă©tĂ© dĂ©veloppĂ© dans le cadre du projet BerliOS. Il comprenait une plateforme d'hĂ©bergement pour des applications open source (comme SourceForge) et plusieurs bases de donnĂ©es pour la documentation et les profils des dĂ©veloppeurs open source. BerliOS a Ă©tĂ© fermĂ© en 2014 en raison d'un manque de financement. Aujourd'hui, HardInfo se dĂ©veloppe grĂące aux efforts d'enthousiastes dans un rĂ©fĂ©rentiel distinct sur GitHub.

Il convient de noter qu'il arrive parfois que des bogues apparaissent dans le fonctionnement du systĂšme. On sait qu'il y a une erreur de segmentation, des problĂšmes avec l'affichage des pĂ©riphĂ©riques USB et plusieurs options. Ils ne sont pas vos captifs, mĂȘme si vous le souhaitez. Ils sont vos invitĂ©s. Python reste un langage de programmation trĂšs populaire, mais, bon sang, Python 3(000) a créé un tel chaos au sein de ses communautĂ©s et chez les utilisateurs de ses communautĂ©s, que les consĂ©quences ne peuvent pas ĂȘtre rĂ©solues depuis quinze ans..

ApacheBench

Outil de test de charge pour serveurs HTTP. ApacheBench (AB) a été développé pour tester Apache, mais il peut fonctionner sur n'importe quel autre serveur. L'outil est préinstallé sur de nombreuses distributions Linux.

Comment tester les performances des serveurs : un aperçu de plusieurs benchmarks open source
Photo — Victor Freitas — Unsplash

L'utilitaire "bombarde" les serveurs avec un grand nombre de requĂȘtes. Pour le lancer, il faut entrer la commande suivante :

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

Cela enverra cent requĂȘtes GET (un maximum de dix d'entre elles seront envoyĂ©es simultanĂ©ment) Ă  la ressource de test. En sortie, le systĂšme affichera le temps moyen de traitement des requĂȘtes, le volume total de donnĂ©es transfĂ©rĂ©es, la bande passante et le nombre d'erreurs.

Aujourd'hui, un vaste communauté s'est formée autour de l'utilitaire. Des nouveaux tutoriels sur la maniÚre de configurer et d'utiliser ApacheBench apparaissent réguliÚrement en ligne.

Il convient de noter qu'AB a un analogue — Apache jMeter, mais avec de grandes capacitĂ©s. Par exemple, il permet de gĂ©nĂ©rer des requĂȘtes Ă  partir de plusieurs ordinateurs, en contrĂŽlant le processus depuis l'un d'eux. Le programme intĂšgre Ă©galement des mĂ©canismes pour l'autorisation des utilisateurs virtuels et prend en charge les sessions personnalisĂ©es. Cet outil est utilisĂ© par de nombreuses entreprises informatiques, y compris les fournisseurs de cloud, par exemple , aussi bien que.

Comment tester les performances des serveurs : un aperçu de plusieurs benchmarks open sourceNous chez 1cloud proposons le service « Cloud Privé ». Cela consiste en la location d'une infrastructure virtuelle avec la possibilité de personnaliser rapidement le parc serveurs virtuels.
Comment tester les performances des serveurs : un aperçu de plusieurs benchmarks open sourceNotre cloud est construit sur du matériel Cisco, Dell, NetApp. L'équipement est installé dans plusieurs centres de données : DataSpace (Moscou), SDN/Xelent (Saint-Pétersbourg), Ahost (Almaty).

Source : habr.com

Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster