Hvordan teste serverytelse: et utvalg av flere åpen kildekode-referanser

Vi fortsetter vår serie med materialer viet til testing av serverytelse. I dag skal vi snakke om et par tidstestede benchmarks som fortsatt støttes og oppdateres - NetPerf, HardInfo og ApacheBench.

Hvordan teste serverytelse: et utvalg av flere åpen kildekode-referanser
Bilder - Peter Balcerzak — CC BY SA

NetPerf

Dette er et verktøy for å vurdere nettverksgjennomstrømning. Den ble utviklet av ingeniører fra Hewlett-Packard. Verktøy omfatter to kjørbare filer: netserver og netclient. For å kjøre testen må de kjøres på forskjellige maskiner. Som standard bruker netperf port 12865, men dette kan endres ved å bruke flagget -p. Verktøyet fungerer med TCP og UDP over BSD Sockets, DLPI, Unix Domain Sockets og IPv6.

I dag er netperf inkludert i benchmarking-verktøysettet flent. Den brukes også av et stort antall IT-selskaper, for eksempel Red Hat. Slik ser beskrivelsen av netperf-tjenesten ut i et av eksemplene for evaluering av OpenShift-ytelse:

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

Det offisielle depotet sier at netperf distribueres under en spesiell Hewlett-Packard-lisens. Forfatteren av verktøyet, Rick Jones, hevder imidlertid at det er designet i de beste tradisjonene for åpen kildekode. Vi legger også merke til at nylige oppdateringer for netperf har blitt ganske sjeldne. Dette kan skyldes produktets modenhet.

netperf har analoger - for eksempel, iperf2 и iperf3. De lar deg også teste nettverksgjennomstrømningen. Utviklingen av iperf3 begynte etter at iperf2-depotet falt i forfall. Den nye versjonen er skrevet fra bunnen av og er inkompatibel med den forrige implementeringen, selv om den inneholder en del av koden. Interessant nok, etter utgivelsen av iperf3 begynte arbeidet med iperf2 å koke igjen. Som et resultat, to verktøy eie lik, men samtidig forskjellig funksjonalitet. For eksempel er iperf2 flertrådet, og iperf3 er det verker med bare en tråd.

vanskelig info

Dette er et verktøy for å samle informasjon om maskinvare og operativsystem. Den viser data om driften av enheter på: PCI, ISA PnP, USB, IDE, SCSI, samt serielle og parallelle porter. Men det kan brukes som et benchmark og overvåkingsverktøy.

HardInfo tilbyr flere tester. For eksempel evaluerer CPU Blowfish prosessorytelse ved å bruke kryptografiske algoritmer for blokksymmetrisk kryptering. Spise CPU N-Queens - test fra kombinatorikk. Systemet løser sjakkproblemet med å plassere N damer på et brett med N x N ruter. Hun ordner brikkene slik at ingen av dem kan angripe de andre. Også verdt å merke seg er FPU FFT - en test for rask beregning av den diskrete Fourier-transformasjonen og FPU Raytracing - beregning av strålesporing ved gjengivelse av en 3D-scene.

Resultatet i de fleste tester er gitt på sekunder, og følgelig, jo mindre det er, jo bedre. Alle rapporter vises i HTML- og txt-formater.

Opprinnelig ble verktøyet utviklet som en del av prosjektet BerliOS. Den inkluderte en vertsplattform for åpen kildekode-applikasjoner (som SourceForge) og flere databaser for dokumentasjon og profiler av åpen kildekode-utviklere. BerliOS ble stengt i 2014 på grunn av utilstrekkelig finansiering. I dag utvikles HardInfo gjennom innsats fra entusiaster i et eget depot på GitHub.

Vær oppmerksom på at systemet noen ganger støter på feil. Det er kjent at periodisk forekommer segmenteringsfeil, problemer med visning av USB-enheter og flere andre.

Apachebenk

Et verktøy for lasttesting av HTTP-servere. ApacheBench (AB) ble designet for å benchmarke Apache, men den kan kjøres på hvilken som helst annen server. Verktøyet er forhåndsinstallert på mange Linux-distribusjoner.

Hvordan teste serverytelse: et utvalg av flere åpen kildekode-referanser
Bilder - Victor Freitas — unsplash

Verktøyet bombarderer servere med et stort antall forespørsler. For å kjøre må du skrive inn følgende kommando:

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

Den vil sende hundre GET-forespørsler (maksimalt ti av dem vil bli sendt samtidig) til testressursen. Ved utgangen vil systemet vise gjennomsnittlig forespørselsbehandlingstid, den totale mengden data som overføres, gjennomstrømning og antall feil.

I dag har et stort samfunn samlet seg rundt verktøyet. vises jevnlig på Internett siste guider om hvordan du setter opp og bruker ApacheBench.

Merk at AB har en analog - Apache jMeter, men med store muligheter. For eksempel lar den deg generere forespørsler fra flere datamaskiner mens du administrerer prosessen fra en av dem. Programmet implementerer også mekanismer for å autorisere virtuelle brukere og støtter brukerøkter. Dette verktøyet brukes av mange IT-selskaper, gjelder også skyleverandører, f.eks. Qualy sin.

Hvordan teste serverytelse: et utvalg av flere åpen kildekode-referanserVi i 1cloud leverer en tjeneste "Privat sky". Dette er en utleie av virtuell infrastruktur med mulighet for raskt å tilpasse flåten virtuelle servere.
Hvordan teste serverytelse: et utvalg av flere åpen kildekode-referanserSkyen vår bygget på jern Cisco, Dell, NetApp. Utstyret er plassert i flere datasentre: DataSpace (Moskva), SDN/Xelent (St. Petersburg), Ahost (Alma-Ata).

Kilde: www.habr.com

Legg til en kommentar