Het Testen van Uw Linux-Server van de Schijf en het RAM-geheugen Snelheid

0
172
Arjuna Kodisinghe/Shutterstock

Als je regelmatig schrijven of het lezen van de bestanden op uw schijf snelheid kan invloed hebben op uw server performance. We tonen u hoe u op maat uw server snelheid, en hoe om te begrijpen hoe het zich verhoudt tot de concurrentie.

Hoe meer IO-gericht Is de Prestaties Gemeten?

Er zijn veel verschillende manieren om lezen en schrijven te schijven, dus geen enkel nummer bestaat voor “snelheid” die je kan meten.

De eenvoudigste manier om de prestaties te meten is aan de tijd hoe lang het duurt om het lezen van grote bestanden of het uitvoeren van groot bestand gekopieerd. Deze maatregelen sequentiële lees-en schrijfsnelheid, dat is een goed gegeven om te weten, maar je zult zelden zie deze hoge snelheden in de praktijk, vooral in een server omgeving.

Een betere gegeven wordt random access snelheid, die meet hoe snel u kunt toegang krijgen tot bestanden die zijn opgeslagen in willekeurige blokken, het nabootsen van de echte wereld gebruik, veel meer.

Ssd ‘ s hebben meestal snel random access snelheden in vergelijking met harde schijven, waardoor ze veel meer geschikt voor algemeen gebruik. Harde schijven hebben nog steeds fatsoenlijke sequentiële lees-en schrijfsnelheden, waardoor ze goed zijn voor data-archivering en ophalen.

Echter, disk kunnen de prestaties niet veel uit voor bepaalde werkbelasting. Veel toepassingen cache-objecten in het geheugen (als je die hebt genoeg RAM), dus de volgende keer dat je wilt om te lezen dat het object, zal het lezen van het geheugen in plaats (wat sneller). Voor schrijven is zwaar werk, maar de schijf moet nog steeds toegankelijk.

Snelheid is vaak gemeten in MB/s, maar bepaalde aanbieders kunnen meten in IOPS (Input/Output Operations Per Second). Dit is gewoon een groter getal betekent hetzelfde; je kunt vinden wat IOPS van MB/s met deze formule:

IOPS = (MBps / Grootte van het Blok) * 1024

Echter, sommige providers kunnen niet doen een geweldige job om je te vertellen welke benchmark die ze gebruiken voor het meten van de OOGDRUK, het is dus goed te doen, test jezelf.

Installeren fio voor de Willekeurige Lees – /Schrijf-Tests

Terwijl Linux heeft gebouwd in het dd commando, die kan worden gebruikt voor het meten van sequential write prestaties, het is niet een indicatie van hoe het zich zal gedragen onder de echte wereld benadrukt. U zult willen om te testen uw random lees-en schrijf snelheid voor in de plaats.

fio is een programma dat kan omgaan met dit. Installeren van uw distro ‘ s package manager:

sudo apt-get install fio

Voer dan een eenvoudige test met behulp van de volgende opdracht:

fio –randrepeat=1 –ioengine=libaio –rechtstreekse=1 –gtod_reduce=1 –name=test –filename=random_read_write.fio –bs=4k –iodepth=64 –size=250M –readwrite=randrw –rwmixread=80

Dit loopt willekeurig lezen en schrijven van de tests op basis van een 250 MB data, in een verhouding van 80% leest 20% schrijft. De resultaten worden weergegeven in termen van IOPS en in MB/s:

De bovenstaande test werd uitgevoerd op een AWS gp2 SSD, een vrij gemiddelde SSD, die geeft een vrij gemiddelde prestaties. Schrijf prestaties zal altijd lager met elk type van IO; veel Ssd ‘s en Hdd’ s zijn gebouwd in de cache voor het station controller te gebruiken, waardoor veel leest redelijk vlot. Echter, wanneer u schrijft, moet u de fysieke veranderingen aan de schijf, wat trager is.

Het uitvoeren van de test op een harde schijf toont lage willekeurige gemengde IO performance, dat is een gemeenschappelijk probleem met harde schijven:

Harde schijven zijn echter meestal gebruikt voor grote sequentiële leest en schrijft, dus een willekeurige IO-test niet overeenstemt met de gebruiken hier. Als u wilt wijzigen van test type, u kunt door op een ander argument voor –readwrite. fio ondersteunt veel verschillende tests:

  • Sequentieel Lezen: seqread
  • Sequentieel Schrijven:seqwrite
  • Willekeurig Lezen: randread
  • Willekeurig Schrijven: randwrite
  • Willekeurige Gemengde IO: randrw

Daarnaast kunt u de grootte van het blok met de –bs argument. Wij stellen het op te waarderen naar 4K, dat is vrij standaard voor de willekeurige test, maar sequentieel lezen en schrijven kunnen tonen beter of slechter prestaties met grotere blok maten. Maten 16KB naar 32 kb wellicht dichter bij wat je tegenkomt onder de echte lading.

Het Testen Van Het Geheugen De Prestaties

fio niet kunnen testen RAM snelheid, dus als je wilt benchmarken uw server RAM-geheugen installeert, moet u sysbench van uw distro ‘ s package manager:

sudo apt-get install sysbench

Dit pakket is een benchmark een benchmark is een veel prestatiemetingen, maar we zijn alleen gericht op de geheugen test. De volgende opdracht wordt toegewezen 1 MB RAM-geheugen, dan voert het schrijven van de activiteiten tot het geschreven heeft 10 GB data, (Maak je geen zorgen, je hoeft niet 10 GB van RAM om dit te doen benchmark.)

sysbench –test=geheugen –geheugen-block-size=1M –geheugen-totaal-size=10G uitvoeren

Dit geeft de snelheid van het geheugen in MiB/s, evenals de toegang latentie in verband met het.

Deze test meet de schrijf snelheid, maar u kunt toevoegen –geheugen-oper=lees voor het meten van de leessnelheid, die moet een beetje hoger de meeste van de tijd. U kunt ook testen met een lager blok maten, die legt meer de nadruk op het geheugen.

Realistisch maar, de meeste RAM zal goed genoeg om zo ongeveer alles, en u zult meestal worden meer beperkt door de hoeveelheid RAM-geheugen dan de werkelijke snelheid.