Følgende er vårt nyhetsbrev for september 2022.
I nyhetsbrevet for mai i år startet vi en serie om feilsøking av ytelsesproblemer på servere. Serien består av fire deler: prosessorkraft, minne, disk og nettverk. Hvis du ikke har lest del 1 og 2, eller ønsker å lese introduksjonen på nytt, finner du dem her:
- Feilsøking og retting av ytelsesproblemer, del 1: Prosessorkraft
- Feilsøking og retting av ytelsesproblemer, del 2: Minne
Del 3: Disk
Disk brukes til å lagre data over tid. For å gjøre dette må noe fysisk på disken endres. Dette er fordi dataene skal kunne ligge der selv om serveren skrues av eller strømmen går. Derfor er disker betydelig tregere enn serverens minne. Data som ligger i minnet er lettere tilgjengelig, men vil forsvinne hvis serveren skrues av eller strømmen går.
Data som skal behandles bør ligge i minnet. Dette ordner man i oppsettet av serveren, innstillingene i programmene som kjører på den eller i arkitekturen til programmene man lager. Hvis serveren går tom for minne, har den to muligheter. Den kan velge å avslutte vilkårlige programmer, men det er ofte ikke ønskelig. Alternativt kan den velge å benytte disken som ekstra minne, noe som kalles “swapping”. Dette er en nødløsning, og kan gi store ytelsesproblemer fordi raske operasjoner blir byttet ut med trege.
Når man opplever ytelsesproblemer, bør man derfor undersøke om serveren bedriver swapping. På Linux-baserte operativsystemer kan man kjøre kommandoen “vmstat -S M 2”. Se i kolonnene “si” og “so”. Hvis disse er 0, foregår det ikke swapping på serveren.
På Windows Server kan man åpne Task Manager, gå til fanen Performance og velge Resource Monitor. Her velger man processes, og ser under “Hard faults / sec”. Hvis det er høye verdier i disse kolonnene, foregår det swapping på serveren, og ytelsen vil kunne være svært redusert.
Ønsker du å feilsøke høy minnebruk på serveren, se del 2 av denne serien.
Hvis du har konfigurert operativsystemet og programmene for riktig bruk av disk og minne, kan du fremdeles oppleve ytelsesproblemer ved bruk av feil type disk.
Disker har to mål på ytelse: Antall «små» skrive-lese-operasjoner per sekund (IOPS) og sekvensiell overføringshastighet, som er hastigheten for en “stor” skrive-lese-operasjon (én lang sekvens).
Det finnes to hovedtyper disk, og disse har ulik ytelsesprofil. SSD-disker har høy IOPS (titusentalls), og HDD har lav IOPS (hundretalls). Både SSD og HDD har høy sekvensiell overføringshastighet, ofte flere hundre MB per sekund. Hos Deploi er SSD standard, og de fleste kundene bruker kun det. Noen leier HDD for å spare penger, da de vet at applikasjonen ikke krever høy IOPS.
Man kan enkelt se hvor mye last det er på diskene på serveren. På Linux-baserte operativsystemer kan man kjøre kommandoen “iostat -m 5”. Da vil det vises hvor mange IOPS som utføres under “tps”, og hvor mye sekvensiell overføring det er under MB_read/s og MB_wrtn/s. På Windows Server kan man åpne Resource Monitor, åpne Disk, og se på kolonnene Total (B/sec), Disk reads/sec og Disk writes/sec. Den første angir sekvensiell overføring, de to andre IOPS.
Hvis IOPS er for høy kan man undersøke om programmene leser eller skriver mange små datamengder. Hvis dette er tilfelle, bør programmene endres så de ikke behøver dette. For programmene betyr det å øke mengden minne som brukes. Minne har svært høye tall for IOPS og sekvensiell overføring: millioner av lese-skrive-operasjoner og mange GB/s i overføring. Mange programmer, som for eksempel databaser, har konfigurerbare buffer-størrelser. Hvis man øker disse, vil programmet gjøre mer i minnet og mindre på disk.
Den vanligste årsaken til at servere hos Deploi får problemer er at disken er full. Du kan lett sjekke om diskene dine er fulle. På Linux-baserte operativsystemer, bruk kommandoen «df -h». På Windows Server åpner du This PC. Trenger du mer disk, kan du enkelt øke størrelsen på diskene dine i vårt kundepanel.
Hjelp til feilsøking og retting av ytelsesproblemer
Deploi har lang erfaring med å feilsøke og rette ytelsesproblemer. Vi hjelper deg gjerne å undersøke om en ressurs er en flaskehals på din server, og hva som eventuelt kan gjøres med det. Vi kan også sparre om tekniske løsninger for å drifte dine applikasjoner effektivt og godt.
Trenger du råd eller bistand i forbindelse med dette, er det som alltid mulig å kontakte oss på chat, telefon eller e-post.
Hilsen
Deploi-teamet
Kommende nyhetsbrev:
- oktober: Grunnleggende serversikkerhet
- november: Cloudflare og Content Delivery Networks (CDN-er)
- desember: Moderne skyløsninger