Die Unterschiede zwischen MySQL-Cache und Puffer sind: 1. Der Puffer wird zum Puffern von Blockgeräten verwendet und zeichnet nur die Metadaten des Dateisystems auf, während der Cache zum Puffern von Dateien verwendet wird. 2. Der Puffer wird zum Speichern von Daten verwendet befindet sich im Verzeichnis, Inhalte, Berechtigungen usw., während der Cache zum Speichern geöffneter Dateien verwendet wird.
Der Unterschied zwischen MySQL-Cache und Puffer ist:
Buffer
s Kernfunktion ist das Puffern und die Wirkung lindern. Wenn Sie beispielsweise 100 Mal pro Sekunde auf die Festplatte schreiben müssen, hat dies große Auswirkungen auf das System und verschwendet viel Zeit mit der Verarbeitung der beiden Dinge Starten und Beenden des Schreibens. Verwenden Sie einen Puffer, um es vorübergehend zu speichern und alle 10 Sekunden auf die Festplatte zu schreiben. Die Auswirkungen auf das System sind sehr gering, die Schreibeffizienz ist hoch und Ihr Leben ist angenehm. Der Aufprall wurde deutlich abgemildert. Die Kernfunktion von
Cache
besteht darin, den Zugriff zu beschleunigen. Wenn Sie beispielsweise eine sehr komplizierte Berechnung abschließen und die Ergebnisse beim nächsten Mal verwenden müssen, bewahren Sie die Ergebnisse einfach an einem leicht zugänglichen Ort auf, damit Sie sie beim nächsten Mal nicht erneut berechnen müssen. Beschleunigt den Datenabruf.
Wenn Sie also auf das Speichersystem achten, werden Sie feststellen, dass die Lese- und Schreibpuffer-/Cache-Namen der Festplatte unterschiedlich sind und write-buffer
und read-cache
genannt werden. Der Unterschied zwischen den beiden ist deutlich erkennbar.
Natürlich können die beiden in vielen Fällen austauschbar verwendet werden. Beispielsweise verwenden viele Menschen Memcached tatsächlich sowohl zum Lesen als auch zum Schreiben. Das Gleiche gilt oft auch für Nicht-SQL-Datenbanken. Streng genommen werden auch der L2- und L3-Cache in der CPU sowohl zum Lesen als auch zum Schreiben genutzt – denn man kann nicht einfach festlegen, ob die CPU sie zum Lesen oder Schreiben verwendet. Ein typisches Beispiel ist auch die Festplatte. Puffer und Cache befinden sich beide im selben Bereich.
Aber denken Sie sorgfältig darüber nach. Halten Sie es für in Ordnung, den Cache als Puffer zu verwenden? Solange die Cache-Räumungslogik gesteuert werden kann, wird es natürlich kein Problem geben.
Wie wäre es mit der Verwendung des Puffers als Cache? Es scheint, dass dies unter ganz besonderen Umständen, wenn die Zugriffsreihenfolge bestimmt werden kann, auch möglich ist. Denken Sie einfach darüber nach und Sie werden verstehen: Muss der Puffer per Definition zufällig gespeichert werden? Im Allgemeinen nicht erforderlich. Aber Cache muss sein. Meistens ist es also in Ordnung, Cache anstelle von Puffer zu verwenden, aber umgekehrt ist die Einschränkung stärker. Dies ist auch technisch gesehen der Hauptunterschied zwischen Cache und Puffer.
Ergänzung 1:
Verstehen Sie nicht falsch, dass Buffer zum Schreiben und Cache zum Lesen dient. Kann ich Buffer zum Lesen verwenden? Natürlich ist dies möglich. Wenn Sie beispielsweise Lesevorgänge stapelweise verarbeiten möchten, anstatt sie alle zu verarbeiten, können Sie den Lesepuffer verwenden. Natürlich können Sie den Cache auch beim Schreiben verwenden, beispielsweise wenn Ihre Schreibvorgänge sehr zufällig sind. Welches Szenario Puffer und welches Szenario Cache verwendet, hängt von den spezifischen Anforderungen des Szenarios ab.
Ergänzung 2:
Verstehen Sie nicht falsch, dass Cache oder Puffer Speicher oder etwas sein muss, das auf einem Hochgeschwindigkeitsmedium gespeichert ist. Solange es relativ hohe Geschwindigkeit ist. Ich kann auf jeden Fall einen Cache auf der Festplatte speichern. Einige Spiele erstellen beispielsweise zur Laufzeit vorkompilierte Shader (was ihr Alter offenlegt). Dies ist im Wesentlichen ein Cache, der auf einer langsamen Festplatte vorhanden ist, da das Lesen der Festplatte immer noch schneller ist schnell neu kompilieren. Das Gleiche gilt für Puffer. Beispielsweise verfügt das NTFS-Dateisystem über einen eigenen Protokollierungspuffer, der sich sogar ausdrücklich weigert, in einem flüchtigen Cache abgelegt zu werden.
Verwandte Lernempfehlungen: MySQL-Video-Tutorial
Das obige ist der detaillierte Inhalt vonWas sind die Unterschiede zwischen MySQL-Cache und -Puffer?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!