Ich verwende Varnish 3.0.3 (das neueste zum Zeitpunkt dieses Schreibens) mit mehr oder weniger der Standardinstallation und verwende Folgendes für die Speicherung:
# # Cache file location
VARNISH_STORAGE_FILE=/var/lib/varnish/varnish_storage.bin
#
# # Cache file size: in bytes, optionally using k / M / G / T suffix,
# # or in percentage of available disk space using the % suffix.
VARNISH_STORAGE_SIZE=4000M
#
# # Backend storage specification
VARNISH_STORAGE="file,${VARNISH_STORAGE_FILE},${VARNISH_STORAGE_SIZE}"
#
Die meisten Seiten, die zwischengespeichert werden können, haben eine sehr lange TTL. Die Site, mit der ich arbeite, ist riesig und hat Millionen von Seiten, die möglicherweise nicht in die oben angegebene Speichergröße (4 GB) passen.
Richten Sie sich für die Fragen ein:
Nehmen wir an, der gesamte Speicherplatz ist voll und noch ist nichts im Cache abgelaufen (meine TTL beträgt 2 Wochen für jedes einzelne Element im Cache).
Ich gehe davon aus, dass der Ban Lurker hier unbrauchbar ist, da er nur abgelaufene und keine abgelaufenen Elemente löscht.
Fragen:
Was passiert angesichts des obigen Szenarios mit Varnish, wenn zusätzliche Anforderungen für etwas eingehen, das sich noch nicht im Cache befindet? Versucht Varnish, ältere Elemente unabhängig von der TTL dieser Elemente aus dem Cache zu löschen? Stürzt der Lack ab? Hängen?
Wenn Varnish das Szenario nicht handhabt, kann ich etwas tun, um es so zu konfigurieren, dass es das Szenario besser handhabt? (Ich könnte natürlich die TTL der Elemente im Cache senken, aber ich frage mich, ob es zusätzliche Vorschläge gibt).
Ich sehe in diesem Szenario, dass Varnish effektiv nicht mehr auf Anfragen reagiert. Zu diesem Zeitpunkt habe ich weder Speicher noch CPU auf der Box.
Vielen Dank.
Nachverfolgen:
Ich habe diesen Beitrag auch gesehen
was mich zeigte
Dies scheint darauf hinzudeuten, dass alles "einfach passiert" ... aber es sieht so aus, als würde tatsächlich eine PURGE-Anfrage für die URL gesendet, für die möglicherweise das entsprechende Material zu Ihrer VCL hinzugefügt werden muss (siehe https://www.varnish-cache.org/). docs / 3.0 / tutorial / purging.html )
Ich werde das versuchen und nachverfolgen, wenn dies das Problem löst.
Antworten:
Entsprechend Ihrem Setup verwenden Sie offenbar eine Festplatte zum Speichern des Lackcaches.
Dies wird nicht empfohlen ( für die Leistung ), es sei denn, Sie haben einen guten Grund (wie sinni800).
Versuchen Sie, RAM zum Speichern des Lackcaches ("malloc" anstelle von "file") zu verwenden, und reproduzieren Sie das Problem.
quelle