Količina swapa?
Prejšnji teden sem vodil tečaj administracije Linux sistemov. Ko smo pri poglavju o particioniranju diskov, me tečajniki vedno vprašajo, kako velika naj bo swap particjia? V jedrih Linux OS 2.6 in novejših je ti. swap particija in swap datoteka enako hitra. Torej kaj izbrati?
Sistemci, ki z Linuxom in ostalimi UNIX-i delamo že precej let vam bomo povedali sledeče; za swap vzami 2x količino RAM-a v računalniku. Toda to je bedarija, saj če imam strežnik z 64 GB RAM-a, potem verjetno ne bom namenil swap particiji oz. swap datoteki 128 GB prostora.
Poraja pa se tudi vprašanje ali bo naš OS vedel izrabiti swap pomnilnik. Načeloma je potrebno glede izrabe swap pomnilnika narediti kar nekaj testov. Na internetu dobite Perl skripto z imenom eatmem in opazujte kaj se dogaja z vašim sistemom.
Kako bi bilo torej moje priporočilo? Če postavljam spletni strežnik ali poštni strežnik bi se le to glasilo enostavno takole:
1.Swap prostor == enak količini RAM (če je RAM < 2GB)
2.Swap prostor == velikosti 2GB (če je RAM > 2GB)
Če imamo recimo na strežniku Oracle bazo podatkov, ki seveda intenzivno zapisuje na hitre diske, ki so recimo v RAID 10 polju bi pa recimo lahko izbrali sledeče:
1.Swap prostor == enak količina RAM (če je RAM < 8GB)
2.Swap prostor == 0.50 x količina RAM (če je RAM > 8GB)
Na vsakem UNIX/Linux/BSD sistemu je na voljo kar nekaj ukazov s katerimi pogledamo, kaj se dogaja z našim fizičnim in navdeznim pomnilnikom, oz. kateri proces nam jemlje največ pomnilnika:
cat /proc/swaps
swapon -s
free -m
top
Seveda je dobra praksa v tem, da lahko naredite tudi več swap datotek oz. swap particiji. Če so le te še na fizično ločenih diskih potem toliko bolje.
Če ugotovite, da vaš strežnik zavzame vašo celotno swap particji, ki je velika 2 GB, potem je čas za nakup dodatnega fizičnega pomnilnika. Desktop sistemom se to ne sme dogajat oz. če se že potem prav tako dokupite RAM, RAM je postal poceni, ne varčujte pri RAM pomnilniku.
Kaj pa vaše izkušnje?
![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_e.png?x-id=15fa70f4-7688-4ea4-96fb-bc7c9ce6b339)

November 23rd, 2008 at 15:46
Je učinkovitost datoteke napram particiji res enaka? Imaš kakšen link?
Po mojih izkušnjah je za namizje dovolj 1G. Razen g++, mi še noben program brez memory leakov ni napolnil swapa.
November 23rd, 2008 at 19:25
Našel sem kar nekaj strani, eden najbolj zanimivih odgovorov pa je od A. Mortona, ki si ga lahko prebereš:
http://lkml.indiana.edu/hypermail/linux/kernel/0507.0/1690.html
Menim, da bo potrebno stvar kar potestirat in bomo videli, čeprav …
November 23rd, 2008 at 20:42
Ja, ravno fragmentacija me je skrbela. Ob stvaritvi datoteke težko zagotoviš da bo zvezna.