Kiel testi servila efikeco: elekto de pluraj malfermkodaj komparnormoj

Ni daŭrigas nian serion de materialoj dediĉitaj al testado de servila rendimento. Hodiaŭ ni parolos pri kelkaj temp-testitaj komparnormoj, kiuj ankoraŭ estas subtenataj kaj ĝisdatigitaj - NetPerf, HardInfo kaj ApacheBench.

Kiel testi servila efikeco: elekto de pluraj malfermkodaj komparnormoj
Фото - Peter Balcerzak — CC BY SA

NetPerf

Ĉi tio estas ilo por taksi retan trairon. Ĝi estis evoluigita fare de inĝenieroj de Hewlett-Packard. Ilo включает du ruleblaj dosieroj: netserver kaj netclient. Por ruli la teston, ili devas esti rulitaj sur malsamaj maŝinoj. Defaŭlte, netperf uzas la havenon 12865, sed ĉi tio povas esti ŝanĝita per la -p flago. La ilo funkcias kun TCP kaj UDP super BSD Sockets, DLPI, Unix Domain Sockets kaj IPv6.

Hodiaŭ netperf estas inkluzivita en la benchmarking ilaro flent. Ĝi ankaŭ estas uzata de sufiĉe granda nombro da IT-kompanioj, ekzemple Ruĝa Ĉapelo. Jen kiel aspektas la priskribo de la netperf-servo en unu el la ekzemploj por taksi la rendimenton 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

La oficiala deponejo diras, ke netperf estas distribuita sub speciala permesilo Hewlett-Packard. Tamen, la aŭtoro de la utileco, Rick Jones, asertas, ke ĝi estas desegnita laŭ la plej bonaj tradicioj de malferma fonto. Ni ankaŭ rimarkas, ke lastatempe ĝisdatigoj por netperf fariĝis sufiĉe maloftaj. Ĉi tio povas esti pro la matureco de la produkto.

netperf havas analogojn - ekzemple, iperf2 и iperf3. Ili ankaŭ permesas al vi testi vian retan trafluon. Evoluo de iperf3 komenciĝis post kiam la iperf2-deponejo kadukiĝis. La nova versio estas skribita de nulo kaj estas nekongrua kun la antaŭa efektivigo, kvankam ĝi enhavas parton de sia kodo. Interese, post la liberigo de iperf3, laboro pri iperf2 denove ekbolis. Kiel rezulto, du iloj havas simila, sed samtempe malsama funkcieco. Ekzemple, iperf2 estas plurfadena, kaj iperf3 estas laboras kun nur unu fadeno.

malfacilaj informoj

Ĉi tio estas ilo por kolekti informojn pri aparataro kaj operaciumo. Ĝi montras datumojn pri funkciado de aparatoj sur: PCI, ISA PnP, USB, IDE, SCSI, kaj ankaŭ seriajn kaj paralelajn pordojn. Sed ĝi povas esti uzata kiel komparnormo kaj monitora ilo.

HardInfo ofertas plurajn provojn. Ekzemple, CPU Blowfish taksas procesoran efikecon uzante kriptografajn algoritmojn por bloka simetria ĉifrado. Manĝu CPU N-Reĝinoj - testo el kombinatoriko. La sistemo solvas la ŝakproblemon meti N reĝinojn sur tabulon de N x N kvadratoj. Ŝi aranĝas la pecojn tiel ke neniu el ili povas ataki la aliajn. Rimarkindas ankaŭ FPU FFT - testo por rapida kalkulo de la diskreta Fourier-transformo kaj FPU Raytracing - kalkulo de radiospurado dum bildigo de 3D sceno.

La rezulto en plej multaj testoj estas donita en sekundoj kaj, sekve, ju pli malgranda ĝi estas, des pli bone. Ĉiuj raportoj estas montritaj en formatoj HTML kaj txt.

Komence, la servaĵo estis evoluigita kiel parto de la projekto BerlinOS. Ĝi inkludis gastigan platformon por malfermfontaj aplikoj (kiel SourceForge) kaj pluraj datumbazoj por dokumentado kaj profiloj de liberkodaj programistoj. BerliOS estis fermita en 2014 pro nesufiĉa financado. Hodiaŭ HardInfo estas disvolvita per la klopodoj de entuziasmuloj en aparta deponejo sur GitHub.

Bonvolu noti, ke la sistemo foje renkontas cimojn. Oni scias, ke periode okazas faŭlto de segmentado, problemoj kun montrado de USB-aparatoj kaj pluraj aliaj.

ApacheBench

Ilo por ŝarĝtestado de HTTP-serviloj. ApacheBench (AB) estis dizajnita por komparmarki Apache, sed ĝi povas funkcii per iu ajn alia servilo. La ilo venas antaŭinstalita en multaj Linukso-distribuoj.

Kiel testi servila efikeco: elekto de pluraj malfermkodaj komparnormoj
Фото - Victor Freitas — Malŝprucigi

La utileco bombadas servilojn kun granda nombro da petoj. Por funkcii, vi devas enigi la jenan komandon:

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

Ĝi sendos cent GET-petojn (maksimume dek el ili estos senditaj samtempe) al la testa rimedo. Ĉe la eligo, la sistemo montros la averaĝan peton prilaborado, la totala kvanto de datumoj transdonitaj, trairo kaj la nombro da eraroj.

Hodiaŭ, granda komunumo kolektiĝis ĉirkaŭ la servaĵo. Regule aperas en la interreto lastaj gvidiloj pri kiel agordi kaj uzi ApacheBench.

Notu ke AB havas analogon - Apache jMeter, sed kun grandaj eblecoj. Ekzemple, ĝi permesas vin generi petojn de pluraj komputiloj dum administrado de la procezo de unu el ili. La programo ankaŭ efektivigas mekanismojn por rajtigi virtualajn uzantojn kaj subtenas uzantsesiojn. Ĉi tiu ilo estas uzata de multaj IT-kompanioj, inkluzive nubaj provizantoj, ekz. Tiu de Qualy.

Kiel testi servila efikeco: elekto de pluraj malfermkodaj komparnormojNi ĉe 1cloud provizas servon "Privata Nubo". Ĉi tio estas luo de virtuala infrastrukturo kun la kapablo rapide personecigi la floton virtualaj serviloj.
Kiel testi servila efikeco: elekto de pluraj malfermkodaj komparnormojNia nubo konstruita sur fero Cisco, Dell, NetApp. La ekipaĵo situas en pluraj datumcentroj: DataSpace (Moskvo), SDN/Xelent (Sankt-Peterburgo), Ahost (Alma-Ata).

fonto: www.habr.com

Aldoni komenton