GNU/Linux >> Linux Esercitazione >  >> Linux

Quanto deve essere grande la partizione di swap?

Soluzione 1:

Su sistemi di grandi dimensioni, 8 GB di RAM fisica, di solito assegniamo 2 GB di swap. Questi sono server di database caricati che eseguono Oracle o PostgreSQL. Per anni, non ho mai visto colpi di scambio anche sotto carico pesante. Il carico pesante è di circa 100-150 utenti che eseguono circa 10.000 letture SQL e forse 2.500 scritture al minuto.

Regoliamo anche il livello di swapiness fino a scoraggiare lo scambio e disattiviamo i processi non necessari che sappiamo di non aver bisogno di essere eseguiti. (Build Linux personalizzate)

Come Eddie, dice sopra, 1x RAM fisica è una buona regola pratica per qualsiasi cosa sotto i 4 GB. Faccio build Linux personalizzate per una grande azienda Fortune-500 e queste sono le cose che facciamo di solito, e non abbiamo avuto problemi negli ultimi 5 anni circa che ho consultato per loro.

Su sistemi più grandi:Linux a 64 bit con 32 GB e 64 GB di RAM, questi sono i nostri server di database Oracle e in genere manteniamo 2 GB di swap per cose come Eddie sottolinea sopra:i processi inattivi verranno spostati in swap a seconda delle impostazioni di swapiness. /P>

Soluzione 2:

Una domanda apparentemente senza tempo. I bravi ragazzi di SlashDot ne hanno discusso un po' di tempo fa. Scopri cosa avevano da dire:

  • Lo spazio su disco non è un problema con i moderni HDD, 16 GB sono ancora una quantità irrisoria per le moderne unità da TB.
  • Tuttavia, uno spazio di scambio significativo può essere un problema in caso di cattiva gestione della memoria:

Se guardo un film da 4 GB per un periodo di 2 ore, molti gestori di memoria decideranno che tentare di memorizzare nella cache tutti quei dati potrebbe essere una buona cosa. A metà del film, penserà che tutti gli altri programmi in esecuzione sono rimasti inutilizzati per un'ora e possono essere tranquillamente sostituiti a favore della memorizzazione nella cache di più di quel file da 4 GB. Il risultato finale è che metà dei tuoi programmi viene sostituita dopo aver visto un film, con il risultato di un sistema lento che distrugge tutto il file di scambio.

  • Alla fine, la decisione giusta dovrebbe venire dai requisiti di memoria, non da formule approssimative:

Se hai [abbastanza RAM per eseguire i programmi che desideri utilizzare quotidianamente], allora non c'è motivo di utilizzare swap.

Soluzione 3:

Vedi la risposta Quanto spazio SWAP su un sistema con memoria elevata? per una guida, anche se la tua domanda è più generale. Le opinioni variano ampiamente su questo, ma generalmente le persone con 1 GiB di RAM o più sembrano funzionare senza swap interamente o con 1xmemory come swap.

Anche se non prevedi di utilizzare così tanta RAM da forzare lo scambio, c'è un certo valore nell'avere almeno 1xmemoria come scambio:consente al sistema operativo di scambiare alcune cose che non dovrebbero essere utilizzate immediatamente in modo che possa invece utilizzare quella memoria per il disco o per i buffer di I/O, ad esempio.

Soluzione 4:

Se ti aspetti che il tuo sistema sia in grado di ibernarsi e poi riprendere con successo :-) , probabilmente è meglio allocare più spazio per la partizione di swap rispetto alla quantità di RAM fisica

Soluzione 5:

Il mio provider VPS non fornisce nemmeno lo spazio di swap per i server e il mio funziona senza problemi.

La maggior parte dei server che vedo quotidianamente al lavoro sono anche senza swap.

Modifica

Tuttavia, se stai eseguendo una JVM, assicurati assicurati hai almeno tanto spazio di swap mai impostare -Xmx a causa di un problema noto con la JVM.

In breve, quando la JVM ha bisogno di più memoria di quella che sta attualmente utilizzando (ma non ha ancora raggiunto il suo Xmx ), it:

  • si scambia su disco
  • alloca nuova memoria
  • si rilegge nella RAM

Ciò significa che se fai lo scambio è inferiore al tuo Xmx , può fallire.

Per citare la segnalazione di bug

La cosa migliore da fare è aumentare la dimensione dello swap sulle macchine che incontrano questo errore.

Cerco di andare sul sicuro quando lavoro con le JVM e imposto lo scambio su uguale memoria fisica.


Linux
  1. Quanto è grande il buffer del tubo?

  2. Come crittografare la partizione domestica?

  3. Devo eseguire il backup della partizione di swap?

  4. Come gestire una partizione di scambio in Linux

  5. Come estendere una partizione di swap LVM in Linux

Quanto swap dovresti usare in Linux?

Come montare una partizione temporanea nella RAM in Linux

Come montare automaticamente la partizione di scambio?

Come devo determinare l'attuale utilizzo della rete?

Android - Come trovare il percorso della partizione di swap sulla scheda SD?

Come aumentare la dimensione dello scambio?