Kako testirati performanse poslužitelja: zbirka nekoliko open source benchmarka

Nastavljamo našu seriju materijala posvećenih testiranju performansi servera. Danas ćemo razgovarati o nekoliko dobro provjerenih benchmarka koji se i dalje podržavaju i ažuriraju — NetPerf, HardInfo i ApacheBench.

Kako testirati performanse poslužitelja: zbirka nekoliko open source benchmarka
Fotografija – Peter Balcerzak — CC BY-SA

NetPerf

To je alat za procjenu propusnosti mreže. Razvili su ga inženjeri iz Hewlett-Packarda. Alat uključuje ima dva izvršna fajla: netserver i netclient. Za provođenje testa treba ih pokrenuti na različitim mašinama. Po defaultu, netperf koristi port 12865, ali ga možete promijeniti pomoću oznake -p. Alat radi s TCP i UDP preko BSD soketa, DLPI, Unix domen soketa i IPv6.

Danas je netperf dio seta alata za benchmarking Flent. Također ga koristi priličan broj IT kompanija, na primjer Red Hat. Ovako izgleda opis servisa netperf u jednom od primjera za procjenu performansi 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

U službenom repozitoriju stoji da se netperf distribuira pod posebnom licencom Hewlett-Packarda. Međutim, autor alata — Rick Jones — tvrdi da je on napravljen u najboljim tradicijama open source-a. Također napominjemo da su nedavna ažuriranja za netperf postala prilično rijetka. Moguće je da je to povezano s zrelošću proizvoda.

Netperf ima analoge — na primjer, iperf2 i iperf3. Oni također omogućuju testiranje propusnosti mreže. Razvoj iperf3 započet je nakon što je repozitorij iperf2 postao zapušten. Nova verzija napisana je ispočetka i nije kompatibilna sa prethodnom implementacijom, iako sadrži dio njenog koda. Ono što je zanimljivo je da je nakon objave iperf3, rad na iperf2 ponovo oživljen. Na kraju, dva alata imaju sličnu, ali u isto vrijeme različitu funkcionalnost. Na primjer, iperf2 je višenitni, dok je iperf3 — radi samo s jednim tokom.

Hardinfo

To je alat za prikupljanje informacija o hardveru i operativnom sistemu. Prikazuje podatke o radu uređaja na: PCI, ISA PnP, USB, IDE, SCSI, kao i serijskim i paralelnim portovima. No, također se može koristiti kao benchmark i alat za monitoring.

HardInfo nudi nekoliko testova. Na primjer, CPU Blowfish — ocjenjuje performanse procesora koristeći kriptografske algoritme simetrične blokovne enkripcije. Tu je CPU N-Queens — test iz kombinatorike. Sustav rješava šahovski problem postavljanja N kraljica na ploču N x N kvadrata. Postavlja figure tako da nijedna od njih ne može napasti ostale. Također, treba napomenuti FPU FFT — test za brzo izračunavanje diskretne Fourierove transformacije i FPU Raytracing — izračunavanje traganja zraka prilikom renderiranja 3D scene.

Rezultati većine testova izražavaju se u sekundama i, shodno tome, što je rezultat manji — to je bolje. Svi izvještaji prikazani su u HTML i txt formatima.

Izvorno je alat razvijen u okviru projekta BerliOS. Uključivao je hosting platformu za aplikacije otvorenog koda (poput SourceForge) i nekoliko baza podataka za dokumentaciju i profile open source programera. BerliOS je zatvoren 2014. godine zbog nedovoljnog financiranja. Danas HardInfo razvijaju entuzijasti u zasebnom repozitoriju GitHubu.

Napominjemo da se u radu sustava ponekad pojavljuju greške. Poznato je o povremeno pojavljujućoj grešci segmentacije, problemima s prikazom USB uređaja i nekoliko drugima.

ApacheBench

Alat za opterećenjsko testiranje HTTP servera. ApacheBench (AB) razvijen je za testiranje Apache, ali može raditi i na bilo kojem drugom serveru. Alat je unaprijed instaliran na mnogim Linux distribucijama.

Kako testirati performanse poslužitelja: zbirka nekoliko open source benchmarka
Fotografija – Victor Freitas – Unsplash

Alat "bombarduje" servere velikim brojem zahtjeva. Za pokretanje potrebno je unijeti sljedeću naredbu:

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

Ona će poslati sto GET zahtjeva (istovremeno će biti poslana najviše deset) na testni resurs. Sustav će na izlazu prikazati prosječno vrijeme obrade zahtjeva, ukupnu količinu prenesenih podataka, propusnost i broj grešaka.

Danas se oko alata okupila široka zajednica. Na mreži redovito se pojavljuju nova uputstva o tome kako konfigurirati i koristiti ApacheBench.

Napominjemo da AB ima analog — Apache jMeter, ali s mnogim mogućnostima. Na primjer, omogućuje generiranje upita s više računala, upravljajući procesom s jednog od njih. Također, program sadrži mehanizme autorizacije virtualnih korisnika i podržava korisničke sesije. Ovaj alat koriste mnoge IT tvrtke, uključujući cloud pružatelje, kao što su Qualys.

Kako testirati performanse poslužitelja: zbirka nekoliko open source benchmarkaMi u 1cloud pružamo uslugu «Privatni oblak». To je iznajmljivanje virtualne infrastrukture s mogućnošću brze prilagodbe parka virtualnih servera.
Kako testirati performanse poslužitelja: zbirka nekoliko open source benchmarkaNaš oblak izgrađen je na opremi Cisco, Dell, NetApp. Oprema se nalazi u nekoliko data centara: DataSpace (Moskva), SDN/Xelent (Sankt Peterburg), Ahost (Almaty).

Izvor: habr.com

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster