Wie viele Methoden kennen Sie zur Analyse der Linux-Speichernutzung?
WBOY
Freigeben: 2024-02-13 18:24:16
nach vorne
710 Leute haben es durchsucht
0. Einleitung:
Der Systemspeicher ist ein unverzichtbarer Bestandteil des Hardwaresystems. Durch die regelmäßige Überprüfung der Systemspeicherressourcen können wir schnell feststellen, ob eine abnormale Belegung der Speicherressourcen vorliegt, und einen stabilen Geschäftsbetrieb gewährleisten.
Zum Beispiel: Durch regelmäßige Überprüfung der Speichernutzung des Website-Servers des Unternehmens können Sie sicherstellen, dass die Serverressourcen ausreichen. Wenn Sie feststellen, dass der Serverspeicher ungewöhnlich belegt ist, können Sie das Problem rechtzeitig beheben, um das Problem des fehlenden Zugriffs zu vermeiden der Website oder langsamer Zugriff aufgrund von unzureichendem Speicher.
Daher ist es für Linux-Administratoren sehr wichtig, in ihrer täglichen Arbeit den Speicherzustand unter Linux-Systemen gekonnt überprüfen zu können!
Es ist nicht schwierig, den Betriebsstatus des Speichers zu überprüfen, aber wie kann man ihn in verschiedenen Situationen richtig überprüfen?
Kuiyijun hat mehrere sehr praktische Methoden zum Überprüfen des Linux-Speichers zusammengestellt:
1. kostenloser Befehl
2. vmstat-Befehl
3./proc/meminfo-Befehl
4. Top-Befehl
5. htop-Befehl
6. Prozessspeicherinformationen anzeigen
Linux-Speicherübersichtsbild
Dieses Diagramm beschreibt gut die Details der Speichernutzung und -zuweisung des Betriebssystems. Es wird jedem empfohlen, dieses Bild zu verwenden, um einige Konzepte des Gedächtnisses zu lernen und zu verstehen.
1. Kostenloser Befehl
Der Befehl free kann die Menge des ungenutzten und belegten Speichers im aktuellen System sowie den vom Kernel verwendeten Speicherpuffer anzeigen.
Zeile (die dritte Zeile) ist die Nutzung des Swap Space
insgesamt
Gesamt verfügbarer physischer Speicher. Im Allgemeinen ist der gesamte physische Speicher, mit Ausnahme einiger reservierter Speicher und des vom Betriebssystem selbst belegten Speichers, die Speichergröße, die das Betriebssystem steuern kann. Dies ist in Version 3.2.8 dasselbe wie in Version 3.3.10. Dieser Wert ist der Wert von MemTotal in /proc/meminfo.
gebraucht
Die Spalten zeigen den verwendeten physischen Speicher und Swap-Speicherplatz. In v3.2.8 wird dieser Wert von (total – free) abgeleitet. Man kann sagen, dass das System vom System zugewiesen wurde, aber nicht unbedingt tatsächlich genutzt wird. Sein Speicherplatz kann zurückgefordert und neu zugewiesen werden. In v3.3.10 wird dieser Wert von (gesamt – frei – Cache – Puffer) abgeleitet und ist der tatsächlich aktuell verwendete Speicher.
kostenlos
Der physische Speicher, der vom System nicht verwendet wird. Dieser Wert ist der Wert von MemFree in /proc/meminfo
geteilt
Gemeinsamer Speicherplatz. Dieser Wert ist der Wert von Shmem in /proc/meminfo
Buff/Cache
Die Spalte
zeigt die von Puffer und Cache verwendete physische Speichergröße
verfügbar
Artikel in v3.3.10. Es scheint, dass es sich bei diesem Wert um nutzbaren Speicher handelt, aber (verfügbar + genutzt)
-/+ Puffer/Cache
v3.2.8 hat diese Zeile, v3.3.10 nicht. Unter diesen ist das verwendete Element der Wert von (verwendet – Puffer – zwischengespeichert), dh der Wert von (gesamt – frei – Puffer – zwischengespeichert), also der Wert des tatsächlich verwendeten Speichers. free Dieses Element ist der Wert von (frei + Puffer + zwischengespeichert), was dem Wert des tatsächlich ungenutzten Speichers entspricht. Persönlich denke ich, dass es -/+ buffers/cache gibt, diese Spalte kommt mir recht bekannt vor. . Die Verwendung der neuen Version v3.3.10 ist jedoch klarer. Ich glaube, es gibt viele Leute wie mich, die ein wenig verwirrt waren, als sie zum ersten Mal sahen, dass die Verwendung in Version 3.2.8 so viel Speicher beanspruchte.
root@local:~# vmstat 2 1
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
1 0 0 3498472 315836 3819540 0 0 0 1 2 0 0 0 100 0
Nach dem Login kopieren
2表示每个两秒采集一次服务器状态,1表示只采集一次。
实际上,在应用过程中,我们会在一段时间内一直监控,不想监控直接结束vmstat就行了,例如:
这表示vmstat每2秒采集数据,按下ctrl + c结束程序,这里采集了3次数据我就结束了程序。
Kategorie
Projekt
Bedeutung
Anleitung
Procs****(Prozess)
r
Anzahl der Aufgaben, die auf ihre Ausführung warten
Zeigt die Anzahl der Aufgaben an, die ausgeführt werden und auf CPU-Ressourcen warten. Wenn dieser Wert die Anzahl der CPUs überschreitet, kommt es zu einem CPU-Engpass.
Wenn der Wert von sys zu hoch ist, bedeutet dies, dass der Systemkern viele CPU-Ressourcen verbraucht. Dies ist keine harmlose Leistung und wir sollten den Grund überprüfen. Der Referenzwert von us + sy beträgt hier 80 %. Wenn us + sy größer als 80 % ist, bedeutet dies, dass möglicherweise nicht genügend CPU vorhanden ist
Id
Leerlaufzeit (einschließlich IO-Wartezeit)
Im Allgemeinen sind wir+sy+id=100
wa
Warten auf die IO-Zeit
Wenn
wa zu hoch ist, bedeutet dies, dass die E/A-Wartezeit schwerwiegend ist. Dies kann durch eine große Anzahl zufälliger Zugriffe auf die Festplatte verursacht werden oder es liegt möglicherweise ein Engpass in der Bandbreite der Festplatte vor.
当发生以上问题的时候请先调整应用程序对CPU的占用情况.使得应用程序能够更有效的使用CPU.同时可以考虑增加更多的CPU. 关于CPU的使用情况还可以结合mpstat, ps aux top prstat –a等等一些相应的命令来综合考虑关于具体的CPU的使用情况,和那些进程在占用大量的CPU时间.一般情况下,应用程序的问题会比较大一些.比如一些sql语句不合理等等都会造成这样的现象.
3.Implement priority paging in s in pre solaris 8 versions by adding line “set priority paging=1” in /etc/system. Remove this line if upgrading from Solaris 7 to 8 & retaining old /etc/system file.
关于内存的使用情况还可以结ps aux top prstat –a等等一些相应的命令来综合考虑关于具体的内存的使用情况,和那些进程在占用大量的内存.
用途:用于打印系统中的CPU和内存使用情况。输出结果中,可以很清晰的看出已用和可用内存的资源情况。top 最好的地方之一就是发现可能已经失控的服务的进程 ID 号(PID)。有了这些 PID,你可以对有问题的任务进行故障排除(或 kill)。
语法
top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]
Nach dem Login kopieren
参数说明:
d : 改变显示的更新速度,或是在交谈式指令列( interactive command)按 s
q : 没有任何延迟的显示速度,如果使用者是有 superuser 的权限,则 top 将会以最高的优先序执行
c : 切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称
S : 累积模式,会将己完成或消失的子进程 ( dead child process ) 的 CPU time 累积起来
s : 安全模式,将交谈式指令取消, 避免潜在的危机
i : 不显示任何闲置 (idle) 或无用 (zombie) 的进程
n : 更新的次数,完成后将会退出 top
b : 批次档模式,搭配 "n" 参数一起使用,可以用来将 top 的结果输出到档案内
0,7 %us【Benutzerspeicherplatz】 – Der Prozentsatz der CPU, der vom Benutzerspeicherplatz belegt ist. 1.0%sy[sysctl] – Der Prozentsatz der CPU, der vom Kernel-Speicherplatz belegt ist. 0,0 %ni【】 – Prozentsatz der CPU, die von Prozessen belegt ist, deren Priorität geändert wurde. 97,9 %id【idolt】 – Prozentsatz der inaktiven CPU. 0,3 %wa[wait] – Prozentsatz der CPU, die von E/A-Wartevorgängen belegt ist. 0,0 %hi[Hardware IRQ] – Hardware Interrupt-Belegungs-CPU-Prozentsatz 0,0 %si【Software-Interrupts】 – Software-Interrupts belegen den Prozentsatz der CPU
Die fünfte Zeile: Informationen zur Swap-Exchange-Partition
“
998396 insgesamt, 771068 kostenlos, 227328 genutzt 635608 verfügbar Mem
“
Die siebte Zeile und darunter: Statusüberwachung jedes Prozesses (Aufgabe)
“
PID – Prozess-ID USER – Prozessbesitzer PR – Prozesspriorität NI – schöner Wert. Negative Werte weisen auf eine hohe Priorität hin, positive Werte auf eine niedrige Priorität. VIRT – Die Gesamtmenge des vom Prozess verwendeten virtuellen Speichers in KB. VIRT=SWAP+RES RES – Die Größe des vom Prozess verwendeten physischen Speichers, der nicht ausgelagert wurde, in KB. RES=CODE+DATA SHR – Größe des gemeinsam genutzten Speichers, Einheit KB S – Prozessstatus. D = unterbrechungsfreier Ruhezustand R = läuft S = Ruhezustand T = verfolgen/stoppen Z = Zombie-Prozess %CPU – der Prozentsatz der seit der letzten Aktualisierung belegten CPU-Zeit %MEM – der Prozentsatz des vom Prozess verwendeten physischen Speichers TIME+ – die verwendete CPU durch den Prozess Gesamtzeit, Einheit 1/100 Sekunde BEFEHL – Prozessname (Befehlsname/Befehlszeile)
“
常用实例
显示进程信息
# top
Nach dem Login kopieren
显示完整命令
# top -c
Nach dem Login kopieren
以批处理模式显示程序信息
# top -b
Nach dem Login kopieren
以累积模式显示程序信息
# top -S
Nach dem Login kopieren
设置信息更新次数
top -n 2
Nach dem Login kopieren
//表示更新两次后终止更新显示
设置信息更新时间
# top -d 3
Nach dem Login kopieren
//表示更新周期为3秒
显示指定的进程信息
# top -p 139
Nach dem Login kopieren
//显示进程号为139的进程信息,CPU、内存占用率等
显示更新十次后退出
top -n 10
Nach dem Login kopieren
五、htop 指令
htop 它类似于 top 命令,但可以让你在垂直和水平方向上滚动,所以你可以看到系统上运行的所有进程,以及他们完整的命令行。
Das obige ist der detaillierte Inhalt vonWie viele Methoden kennen Sie zur Analyse der Linux-Speichernutzung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn