GNU/Linux >> Linux Esercitazione >  >> Linux

Controlla il carico di sistema su Linux

Quando le richieste di un programma in esecuzione fanno sì che richieda risorse eccessive dal tuo server, potresti riscontrare prestazioni scarse e instabilità del sistema.

Tempo di attività

Controlla il carico sul tuo server usando il uptime comando.

$ uptime
15:16:45 up 41 days,  2:35,  2 users,  load average: 0.01, 3.01, 2.70

L'esempio mostra l'output di uptime . Quando il comando è stato eseguito alle 15:16:45, il server era attivo da 41 days 2 hours and 35 minutes , c'erano due utenti connessi e le medie di carico erano 0.01 , 3.01 e 2.70 .

Il carico medio è il lavoro che il sistema sta facendo. I tre numeri mostrano le medie di carico rispettivamente per l'ultimo minuto, 5 minuti e 15 minuti. Una media di carico di 1 riflette il carico di lavoro completo di un singolo processore sul sistema. Un carico di 2 su un sistema con due CPU significa che quelle CPU funzionavano al massimo. Su un sistema con quattro CPU, quel 2 riflette un carico di lavoro che utilizza circa la metà della potenza di elaborazione disponibile.

In circostanze normali, si desidera che la media del carico sia pari o inferiore al 70% dell'utilizzo totale della CPU. Puoi controllare il numero di CPU disponibili per la tua istanza eseguendo il comando seguente:

$ grep processor /proc/cpuinfo | wc -l

Se le medie di carico mostrano che il carico è in aumento ed è superiore al numero di CPU, è necessario indagare sulla causa. Un carico maggiore del numero di CPU significa che il sistema sta mettendo in coda le richieste del processore, il che riduce le prestazioni.

in alto

La top Il comando visualizza informazioni in tempo reale sull'utilizzo delle risorse del server. Le prime righe forniscono un riepilogo dell'utilizzo delle risorse nel sistema. È possibile ordinare l'elenco dei processi per CPU (P ) o uso della memoria (M ), che ti consente di vedere rapidamente le maggiori richieste sulle risorse del tuo server.

gratuito

Il free Il comando visualizza informazioni sull'utilizzo della memoria del server. Le prime righe forniscono un riepilogo dell'utilizzo della memoria sul sistema.
Il gratuito la colonna mostra la quantità di memoria libera, che generalmente è minima perché la memoria inutilizzata è una risorsa sprecata. Il disponibile colonna displaymostra che è disponibile molta memoria da allocare a processi esistenti o nuovi.

vmstat

La quantità di memoria di sistema è uno dei fattori limitanti più comuni. Lo scambio è un'area del disco rigido in cui i dati vengono spostati per liberare memoria fisica (RAM) da utilizzare per un processo (non tutti i server hanno spazio di scambio configurato). Se il sistema consuma la maggior parte della sua area di scambio, ciò potrebbe significare che il server è cercare di fare più di quanto la sua memoria disponibile consenta non che la memoria sia insufficiente.

Se hai configurato lo spazio di scambio e sospetti che il tuo server stia esaurendo la memoria standard, puoi utilizzare vmstat per mostrare la quantità di scambi in corso.

L'esempio seguente mostra le statistiche della memoria virtuale di un sistema 10 volte a intervalli di 5 secondi.

$ vmstat 5 10
procs -----------memory-------------  ---swap---- -----io---- --system--  -----cpu------
r  b    swpd    free   buff  cache       si    so    bi    bo   in    cs us sy  id wa st
2  3   138096   3904    140    584    14829 33632 16684 33633 1353 11562 64  9  16 11  0
7  4   156592   3800    132    492    53570 48618 54264 48622 2762 8148  20  5  50 24  0
2  7   258552   3040    128    668    37910 39822 39766 39826 2763 10861 43  8  23 26  0
7  4   261608   4312    116    776    41696 30854 42171 30855 2771 8631  26  6  33 35  0
3  4   259316   3824    112    576    44616 32316 44697 32320 2746 7087  15  4  52 28  0
0  5   257000   3376    116    880    25895 19847 26622 19848 1673 2877   1  2  68 29  0
4  4   263240   3384    124   1424    30018 21066 30497 21070 1732 4559   9  3  64 24  0
2 14   264656   5740    120   1812    27685 19030 28029 19031 2194 5345  11  3  51 35  0
6  3   338044   3764    132   1568    20087 31066 20470 31070 1798 9847  46  6  33 14  0
2  4   325904   4048    108   1172    13251 7190  13812  7190 1193 8838  38  5  24 32  0

Nell'esempio, il gratuito mostra che la quantità di memoria libera è di soli 4 MB circa.

Il si e così le colonne mostrano la quantità di dati trasferiti tra lo scambio del sistema e la sua memoria. In questo esempio, puoi vedere che molti dati vengono spostati. così mostra la quantità di dati spostati nello scambio per liberare memoria. si mostra la quantità di dati recuperati dallo scambio in memoria. Ciò accade quando un processo ha bisogno dei dati per essere eseguito.

Quando un server esegue costantemente lo scambio in entrata e in uscita dalla memoria, ciò indica che il carico su di esso è troppo elevato per le risorse disponibili. Usa il top comando per identificare i processi che consumano più risorse.

Riepilogo

Se top e vmstat indica che il server sta utilizzando tutte le sue risorse, è necessario ottimizzare la configurazione corrente. Ad esempio, è possibile eseguire alcuni processi di elaborazione al di fuori delle ore di punta, interrompere eventuali processi non richiesti e riconfigurare altri processi in modo che utilizzino meno risorse. Potresti anche prendere in considerazione l'idea di aumentare le dimensioni del tuo server per soddisfare meglio le tue esigenze.

Se l'applicazione viene eseguita e sembra integra, verifica che sia in ascolto per le connessioni di rete. Verifica se il servizio è in ascolto sulla presa corretta utilizzando netstat comando. Consulta Verifica delle porte di ascolto con netstat per ulteriori informazioni.


Linux
  1. Il kernel Linux:le 5 migliori innovazioni

  2. Come controllare la versione del sistema operativo e di Linux

  3. Come verificare se un sistema Linux è a 32 o 64 bit

  4. Come cambiare l'identità di un sistema Linux

  5. Come controllare la dimensione dell'heap per un processo su Linux

Come controllare il runlevel in Linux

Gestione dello swap nel moderno sistema Linux

Come controllare il carico del tuo server in Linux

Controlla il fuso orario in Linux

Come installare Sysdig su Linux per monitorare il carico del sistema

Come controllare il carico del server nel sistema Linux