Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

Verbesserungen an Cluster und Cache

Exponential 4.1 bringt große Verbesserungen an Cluster und Cache.

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/features/4.1/cache_improvements.txt

This page is a translation. Read the English original

Verbesserungen an Cluster und Cache
===================================

Exponential 4.1 bringt große Verbesserungen an Cluster und Cache.

Schnelleres Ablaufen des Caches
-------------------------------
Das Datenbankschema der Cluster-Tabelle ezdbfile hat ein neues Feld erhalten,
name_trunk. Es speichert den gemeinsamen Teil der Namen von Cache-Dateien.

So haben zum Beispiel alle ViewCache-Dateien des Knotens 2 einen Namen dieser
Art:
var/plain_site/cache/content/plain_site_user/2-xxx.cache.

name_trunk enthält dann für ALLE ViewCache-Dateien des Knotens 2
var/plain_site/cache/content/plain_site_user/2-.

Musste der ViewCache von Knoten 2 ablaufen, lautete die Bedingung bisher:
DELETE FROM ezdbfile WHERE name LIKE 'var/plain_site/cache/content/plain_site_user/2-%'.

Mit dieser Änderung lässt sich eine VIEL schnellere Abfrage ausführen:
DELETE FROM ezdbfile WHERE name_trunk = 'var/plain_site/cache/content/plain_site_user/2-'.

Das wirkt sich auch auf die Gesamtleistung aus, weil dabei keine Zeilen
durchsucht werden. Das gilt für den ViewCache ebenso wie für Cache-Blöcke.

Veralteter Cache (Stale Cache)
------------------------------
Bis Exponential 4.1 konnte das Leeren des Inhalts-Caches eines Knotens die
Leistung stark beeinträchtigen: Der erste Prozess, der die Cache-Datei
anforderte, musste die dynamischen Daten erzeugen und die Cache-Datei
speichern.

In dieser Zeit war jeder andere Prozess, der denselben Cache anforderte,
gesperrt und wartete, bis der erste fertig war. Auf Websites mit viel Verkehr
konnten sich so Dutzende Prozesse anstauen, jeder mit offener
Datenbankverbindung, Speicher- und CPU-Verbrauch ...

Die Änderungen in Exponential 4.1 ändern diesen Ablauf grundlegend.

Läuft ein Cache ab, erzeugt der erste Prozess das Cache-Element unter einem
anderen Namen. Die ursprüngliche Datei bleibt unverändert erhalten
(abgelaufen, aber unverändert). Jeder andere Prozess, der dieselbe
Cache-Datei anfordert, erfährt, dass sie gerade erzeugt wird, und verwendet
eine alte Cache-Datei, statt auf das Ende des Vorgangs zu warten.

Es gibt eine Zeitgrenze für die Erzeugung: Wird eine Cache-Datei sehr lange
erzeugt, kann ein anderer Prozess den Vorgang übernehmen (meist ist dann der
erste Prozess abgestürzt). Standardmäßig beträgt die Zeitgrenze 60 Sekunden;
sie lässt sich mit ContentSettings.CacheGenerationTimeout in site.ini
einstellen.

Umgesetzt ist das sowohl für den FS- als auch für den DB-Cluster-Handler. Die
Unterschiede zwischen beiden sind unten beschrieben.

DB-Handler
''''''''''

FS-Handler
''''''''''

Something wrong on this page? Report an error

Documentation license

This page was inherited from the documentation of the original software. It is not covered by the GNU Free Documentation License; it is distributed under the GNU General Public License, version 2.

Copyright (C) 1999 - 2014 eZ Systems AS and contributors