cachefilesd – wie stellt man sicher, dass die Datei aus dem lokalen Cache kopiert wird?

cachefilesd – wie stellt man sicher, dass die Datei aus dem lokalen Cache kopiert wird?

Ich habe das Setup durchgeführt cachefilesdund um zu prüfen, ob es richtig ist, habe ich Folgendes überprüft:

  • cachefilesdDienst läuft
  • NFS-Speicher ist mit montiert -o fscund in der Lage zu sehen, FSCeingestellt auf yesin/proc/fs/nfsfs/volumes
  • wenn eine Datei von NFS kopiert wird, sehe ich, dass neuer Inhalt hinzugefügt wird /var/cache/fscache(dies wird eingerichtet in/etc/cachefilesd.conf

Wenn ich jetzt zum ersten Mal 4 MB vom NFS kopiere, kommt die benötigte Zeit laut timeBefehl ungefähr auf 400-450 millsecs. Wenn ich dann dieselbe Datei erneut kopiere, verkürzt sich die Zeit auf 50-60 millisecs. Die verkürzte Zeit hat mich gefreut, da der lokale Cache wie erwartet funktioniert.

Aber wenn ich den Dienst abschalte cachefilesdund den Speicher ohne -o fscOption neu einbinde, sehe ich immer noch dasselbe Verhalten, d. h. das zweite Kopieren dauert immer noch genauso lange. Ich glaube, als das cachefilesdeingeschaltet war, hätte das Kopieren aus dem lokalen Cache schneller gehen müssen.

Ich habe ein paar Sites geprüft, auf denen erwähnt wurde, dass auf dem NFS-Server selbst die Zwischenspeicherung aktiviert sein könnte und dass das zweite Kopieren deshalb vielleicht schneller geht, selbst wenn die Zwischenspeicherung cachefilesddeaktiviert ist.

Um zu testen, ob das zweite Kopieren aus dem lokalen Cache erfolgt, habe ich mir überlegt, mithilfe von eine Latenz einzuführen tc qdisc add dev eth0 root netem delay 400ms. (Ich stelle sicher, cachefilesddass eingeschaltet ist und der NFS-Speicher mit gemountet ist -o fsc.) Jetzt sehe ich, dass das erste Kopieren viel länger dauert als erwartet, z. B. 8-10 secsund überraschenderweise dauert das zweite Kopieren etwa 800 millisecs, 1 secwas immer noch hoch ist, wenn die Datei aus dem lokalen Cache kopiert wird. Dieses Verhalten trifft wieder zu, wenn cachefilesdausgeschaltet ist.

Die Fragen:

  • Warum dauert das zweite Kopieren so lange, wenn cachefilesdes eingeschaltet ist und eine Latenz auftritt?
  • Wie finde ich heraus, ob die Datei aus dem lokalen Cache kopiert wurde?

Hinweise jeglicher Art sind sehr hilfreich.

Kann irgendjemand irgendwelche Informationen liefern?

verwandte Informationen