Ich benutze einen Linux-Server mit 128 GB Speicher und 24 Kernen. Ich benutze top, um zu sehen, wie oft es verwendet wird. Die Ausgabe wird am Ende des Beitrags eingefügt. Hier sind zwei Fragen:
(1) Ich sehe, dass jeder der laufenden Prozesse einen sehr kleinen Prozentsatz des Speichers belegt (% MEM nicht mehr als 0,2% und am meisten nur 0,0%), aber wie wird der Gesamtspeicher fast wie in der vierten Ausgabezeile verwendet ( "Mem: 130766620k gesamt, 130161072k verwendet, 605548k frei, 919300k Puffer")? Es ist unwahrscheinlich, dass die Summe des verwendeten Speicheranteils über alle Prozesse hinweg fast 100% erreicht, nicht wahr?
(2) Wie ist der Lastdurchschnitt in der ersten Zeile zu verstehen ("Lastdurchschnitt: 14.04, 14.02, 14.00")?
Danke und Grüße!
Bearbeiten:
Vielen Dank!
Ich höre auch sehr gerne einige grobe Zahlen basierend auf dem verwendeten Prozentsatz des Speichers, um festzustellen, ob ein Server stark ausgelastet ist, da ich einmal derjenige war, der den Server überlastet hat, ohne die aktuelle Auslastung zu verstehen.
Wird Swap als fast gleichbedeutend mit Memory angesehen? Wenn beispielsweise Speicher und Auslagerungsspeicher fast gleich groß sind, wenn der Speicher fast leer ist, der Auslagerungsspeicher jedoch noch weitgehend frei ist, kann ich dies nur so betrachten, als ob der verwendete Prozentsatz von Speicher + Auslagerungsspeicher immer noch nicht hoch ist, und andere neue ausführen Prozesse?
Wie würden Sie die CPU- oder Speicherauslastung (oder Speicher- und Auslagerungsauslastung) zusammen betrachten? Machen Sie sich Sorgen, wenn einer der beiden Werte zu hoch ist oder beides?
Ausgabe von top :
$ top
top - 12:45:33 up 19 Tage, 23:11, 18 Benutzer, Lastdurchschnitt: 14.04, 14.02, 14.00 Aufgaben: 484 insgesamt, 12 laufen, 472 schlafen, 0 gestoppt, 0 Zombie CPU (s): 36,7% us, 19,7% sy, 0,0% ni, 43,6% id, 0,0% wa, 0,0% hi, 0,0% si, 0,0% st Mem: 130766620k gesamt, 130161072k verwendet, 605548k frei, 919300k Puffer Swap: 63111312k insgesamt, 500556k verwendet, 62610756k frei, 124437752k zwischengespeichert PID BENUTZER PR NI VIRT RES SHR S% CPU% MEM ZEIT + BEFEHL 6529 sanchez 18 -2 1075 m 219 m 13 m S 100 0,2 13760: 23 MATLAB 13210 timothy 18 -2 48336 37m 1216 R 100 0.0 3: 56.75 absurdität 13888 timothy 18 -2 48336 37m 1204 R 100 0.0 2: 04.89 absurdität 14542 timothy 18 -2 48336 37m 1196 R 100 0.0 1: 08.34 absurdität 14544 timothy 18 -2 2888 2076 400 R 100 0.0 1: 06.14 gatherData 6183 sanchez 18 -2 1133 m 195 m 13 m S 100 0,2 13676: 04 MATLAB 6795 Sanchez 18 & ndash; 2 1079 m 210 m 13 m S 100 0,2 13734: 26 MATLAB 10178 timothy 18 -2 48336 37m 1204 R 100 0.0 11: 33.93 absurdität 12438 timothy 18 -2 48336 37m 1216 R 100 0.0 5: 38.17 absurdität 13661 Timothy 18-2 48336 37m 1216 R 100 0.0 2: 44.13 Absurdität 14098 timothy 18 -2 48336 37m 1204 R 100 0.0 1: 58.31 absurdität 14335 timothy 18 -2 48336 37m 1196 R 100 0.0 1: 08.93 absurdität 14765 timothy 18 -2 48336 37m 1196 R 99 0.0 0: 32.57 Absurdität 13445 timothy 18 -2 48336 37m 1216 R 99 0.0 3: 01.37 absurdität 28990 root 20 0 0 0 0 S 2 0.0 65: 50.21 pdflush 12141 tim 18 -2 19380 1660 1024 R 1 0.0 0: 04.04 top 1240 root 15 -5 0 0 0 S 0 0.0 16: 07.11 kjournald 9019 root 20 0 296m 4460 2616 S 0 0.0 82: 19.51 kdm_greet 1 root 20 0 4028 728 592 S 0 0.0 0: 03.11 init 2 root 15 -5 0 0 0 S 0 0.0 0: 00.00 kthreadd 3 Wurzel RT -5 0 0 0 S 0 0.0 0: 01.01 Migration / 0 4 root 15 -5 0 0 0 S 0 0.0 0: 08.13 ksoftirqd / 0 5 root RT -5 0 0 0 S 0 0.0 0: 00.00 watchdog / 0 6 root RT -5 0 0 0 S 0 0.0 17: 27.31 migration / 1 7 root 15 -5 0 0 0 S 0 0.0 0: 01.21 ksoftirqd / 1 8 root RT -5 0 0 0 S 0 0.0 0: 00.00 watchdog / 1 9 root RT -5 0 0 0 S 0 0.0 10: 02.56 migration / 2 10 root 15 -5 0 0 0 S 0 0.0 0: 00.34 ksoftirqd / 2 11 root RT -5 0 0 0 S 0 0.0 0: 00.00 watchdog / 2 12 root RT -5 0 0 0 S 0 0.0 4: 29.53 migration / 3 13 root 15 -5 0 0 0 S 0 0.0 0: 00.34 ksoftirqd / 3
quelle
Antworten:
Führen Sie Folgendes aus, um festzustellen, wie viel Speicher Sie derzeit verwenden
free -m
. Es wird folgende Ausgabe liefern:Der Wert für 'used' (1923) in der obersten Zeile entspricht fast immer fast dem Wert für mem in der obersten Zeile (2012). Da Linux gerne einen freien Speicherplatz zum Zwischenspeichern von Plattenblöcken verwendet (515).
Die zu betrachtende Kennzahl ist der verwendete Wert für Puffer / Cache-Zeile (1316). Dies ist, wie viel Speicherplatz Ihre Anwendungen derzeit verwenden. Für eine optimale Leistung sollte diese Anzahl unter Ihrem Gesamtspeicher (2012) liegen. Um Speicherfehler zu vermeiden, muss der Gesamtspeicher (2012) und der Auslagerungsspeicher (3153) unterschritten werden.
Wenn Sie schnell sehen möchten, wie viel Speicher verfügbar ist, sehen Sie sich den Wert für Puffer / Cache-Zeilen (695) an. Dies ist der Gesamtspeicher (2012) - der tatsächlich verwendete (1316). (2012 - 1316 = 696, nicht 695, dies ist nur eine Rundungsfrage)
Dieser Artikel über die durchschnittliche Auslastung verwendet eine nette Verkehrsanalogie und ist der beste, den ich bisher gefunden habe: Grundlegendes zur CPU- Auslastung unter Linux - wann sollten Sie sich Sorgen machen? . In Ihrem Fall, wie die Leute betonten:
Mit einer durchschnittlichen Auslastung von 14,00 und 24 Kernen ist Ihr Server also weit davon entfernt, überlastet zu werden.
quelle
Unix-ähnliche Systeme, einschließlich Linux, wurden entwickelt, um den verfügbaren Arbeitsspeicher so effizient wie möglich zu nutzen. Ganz allgemein gibt es drei Zustände, in denen sich jedes MB RAM befinden kann:
Der 3. Status wird nur als Arbeitsspeicher verwendet und soll bei Bedarf neu zugewiesen werden, dh Ihr gesamter verfügbarer Speicher für Programme ist wirklich Free + UsedforBuffers. Aus diesem Grund wird der zugewiesene Pufferplatz nicht als einem bestimmten Prozess zugewiesen angezeigt.
Ihre Frage zur durchschnittlichen Auslastung ist etwas interessanter, da sie leicht falsch interpretiert werden kann. Die ganze Geschichte finden Sie in diesem Artikel im Linuxjournal . Die beste Zusammenfassung ist ein direktes Zitat aus dem Artikel,
Das heißt, Sie können sich Ihren Lastdurchschnitt als (Anzahl der ausgeführten Prozesse) + (Anzahl der auf E / A wartenden Prozesse) vorstellen. Unter Berücksichtigung der Tatsache, dass zu einem bestimmten Zeitpunkt eine Anzahl von $ CORE-Prozessen ausgeführt werden kann, würde ich sagen, dass Ihr Lastdurchschnitt von 14 ziemlich niedrig ist.
quelle
Von der
sar
Manpage:Von der
uptime
Manpage:quelle
top
Grunde genommen unbrauchbar wird, und behält im Allgemeinen den größten Teil des Arbeitsspeichers des Computers für verschiedene Zwecke bei, wenn er von einem Benutzerprozess nicht benötigt wird.quelle
Lastdurchschnitt ist eine tolle Sache. Damit können Sie nachvollziehen, was jenseits der 100% igen Auslastung passiert: http://en.wikipedia.org/wiki/Load_%28computing%29
quelle