In Linux-Systemen tauchen häufig die drei Konzepte SWAP, Cache und Buffer auf. Was bedeuten sie jeweils? Einfach ausgedrückt bezieht sich SWAP auf den Auslagerungsbereich des virtuellen Speichers, Cache auf den Pufferbereich und Puffer auf den Eingabe- und Ausgabepufferbereich. Ihr Einsatz in Linux-Systemen spielt eine entscheidende Rolle für die Leistung des Systems. Allerdings belegen und nutzen unterschiedliche Anwendungsszenarien und Anwendungen diese drei Cache-Bereiche unterschiedlich. Wie können wir sie rationaler nutzen? Als nächstes wird es Ihnen in diesem Artikel ausführlich vorgestellt.
**1. Linux-Speicher über kostenlosen Befehl anzeigen
**
total: Gesamtspeichergröße.
used: Die verwendete Speichergröße (dazu gehören Cache, Puffer und gemeinsam genutzte Teile).
kostenlos: Freie Speichergröße.
shared: Gemeinsamer Speicher zwischen Prozessen (im Allgemeinen nicht verwendet, kann ignoriert werden).
Puffer: Die in den Speicher geschriebenen Dinge werden zwischengespeichert, sodass auf Anfragen schnell reagiert werden kann und die nachfolgenden Daten regelmäßig auf die Festplatte geleert werden.
cached: Die Größe des zwischengespeicherten Inhalts im Speicher nach dem Lesen (dieser Teil dient zur schnellen Rückkehr bei der nächsten Abfrage).
-/+ Puffer/Cache können als zwei Teile betrachtet werden:
-buffers/cache: Die Größe des verwendeten Speichers (beachten Sie, dass es sich nicht um den verwendeten Teil handelt, da Puffer und Cache nicht verwendet werden und Organisationen und Personen sicherstellen müssen, dass sie freigegeben werden können), sein Wert = used- zwischengespeichert.
+Puffer/Cache: Die verfügbare Speichergröße (ebenso nicht der Teil, der durch „frei“ dargestellt wird), ihr Wert = frei+Puffer+zwischengespeichert.
Swap: Die verwendete Größe der Swap-Partition auf der Festplatte.
Der Zweck des Designs besteht darin, dass, wenn der oben erwähnte verfügbare Speicher, der durch +Puffer/Cache dargestellt wird, aufgebraucht ist und neue Lese- und Schreibanforderungen eingehen, ein Teil der Daten im Speicher auf die Festplatte geschrieben wird, wodurch ein Teil behandelt wird des Speicherplatzes, der als virtueller Speicher verwendet werden soll.
2. Einführung in Puffer und Cache
Cache (Cache) soll den Datenaustausch zwischen CPU und Speicher erhöhen, und Buffer (Puffer) soll den Datenaustausch zwischen Speicher und Festplatte (oder anderen E/A-Geräten) erhöhen.
Cache ist hauptsächlich für Lesevorgänge konzipiert, aber das Konzept des Cache kann leicht verwechselt werden. Ich verstehe, dass die CPU selbst über Cache der ersten Ebene, Cache der zweiten Ebene und Cache der dritten Ebene verfügt Die Operationen der CPU sind mit dem Speicher verbunden, und die Verarbeitungsleistung der CPU ist viel höher als die Speichergeschwindigkeit. Um zu verhindern, dass die CPU-Ressourcen ungenutzt bleiben, haben Intel und andere Unternehmen einige Caches in die CPU integriert, aber danach Alles in allem können sie nicht zu viele Schaltkreise darin unterbringen, daher ist dieser Teil des Caches nicht sehr groß und wird hauptsächlich zum Speichern einiger häufig verwendeter Anweisungen und häufig verwendeter Daten verwendet. Eigentlich sollten die meisten Cache-Daten den zwischenzuspeichernden Speicherplatz belegen die angeforderten Daten, also der zwischengespeicherte Teil oben (dieser Teil ist rein persönliches Verständnis, ob er korrekt ist oder nicht, bleibt abzuwarten) Recherche).
Buffer ist hauptsächlich für Schreibvorgänge und insbesondere für Schreibvorgänge zwischen Speicher und Festplatte konzipiert. Der Zweck besteht darin, die Festplattenfragmentierung und wiederholte Festplattenadressierungsprozesse zu reduzieren und die Leistung zu verbessern.
Im Linux-System gibt es einen Daemon-Prozess, der regelmäßig den Inhalt des Puffers löscht und auf die Festplatte schreibt. Der obige Vorgang wird auch ausgelöst, wenn der Synchronisierungsbefehl manuell ausgeführt wird.
3. Häufige Symptome
Symptom 1: Unter Linux wird häufig auf Dateien zugegriffen, der physische Speicher ist schnell aufgebraucht und der Cache wächst ständig.
Erklärung: Linux speichert alle angeforderten Daten im Cache. Der Vorteil besteht darin, dass die Verarbeitungsgeschwindigkeit der CPU viel höher ist als die des Speichers, sodass bei der Kommunikation zwischen CPU und Speicher das Trefferergebnis schnell aus dem Cache zurückgegeben werden kann .
Symptom 2: Swap ist belegt.
Erklärung: Swap ist möglicherweise belegt, wenn der Speicher nicht ausreicht. Daher kann Swap als Indikator für die Serverüberwachung verwendet werden, um Aufmerksamkeit zu erregen.
4. Swap und Puffer/Cache manuell bereinigen
(1) Clean Swap
swapoff -a && swapon -a
Bedienungsanweisungen: Wenn Swap verwendet wurde und nach dem Löschen noch Platz in den Puffern/Cache vorhanden ist, löst die Ausführung des swapoff -a-Vorgangs das Auslagern des Inhalts in Swap in den Speicher aus, und die Daten gehen nicht verloren.
(2) Puffer/Cache reinigen:
sync; sync; sync;&& echo 3 >/proc/sys/vm/drop_caches sleep 2 echo 0 > /proc/sys/vm/drop_caches
Bedienungsanleitung:
sync–>Den zwischengespeicherten Inhalt zurück auf die Festplatte schreiben;
echo 3 >/proc/sys/vm/drop_caches–>Ändern Sie den Wert von drop_caches auf 3, der Standardwert ist 0, eine Änderung auf 3 löscht den zwischengespeicherten Inhalt;
sleep 2 –> Warten Sie einen Moment, falls der vorherige Schritt noch nicht abgeschlossen ist;
echo 0 >/proc/sys/vm/drop_caches –> Zurück zum Standardwert ändern
Im Allgemeinen sind die drei Cache-Bereiche SWAP, Cache und Buffer entscheidende Teile des Linux-Systems und haben einen direkten Einfluss auf die Leistung und Stabilität des Systems. Durch die richtige Steuerung und Verwendung kann das System stabiler und effizienter laufen und so das Benutzererlebnis verbessert werden. Ich hoffe, dass dieser Artikel Ihnen hilft, die Verwendung dieser drei Cache-Bereiche in Linux-Systemen zu verstehen. Wenn Sie etwas hinzufügen oder Fragen haben, hinterlassen Sie bitte eine Nachricht zur Kommunikation.
Das obige ist der detaillierte Inhalt vonWie nutzt man SWAP, Cache und Buffer unter Linux sinnvoll?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!