Um die Performance zu optimieren, haben das Redaktionssystem (GUI) und der
Live-Server (PM) mehrere Caches. Die Dimensionierung dieser Caches sollte an
die verwendete Hardware des Servers, insbesondere den verfügbaren
Arbeitsspeicher angepasst werden.
Die Caches können in den Dateien gui.xml
und
pm.xml
konfiguriert werden. Ein Cache ist als
bean
-Eintrag der Klasse
org.springframework.cache.ehcache.EhCacheFactoryBean
zu
erkennen. Werden die folgenden Cache-Eigenschaften nicht gesetzt, so ist der
jeweilige Cache nicht aktiv. Jeder Cache hat die folgenden konfigurierbaren
Eigenschaften:
maxElementsInMemory
Die Anzahl der Elemente, die gleichzeitig im Cache gehalten werden dürfen.
timeToIdle
Die Zeit in Sekunden, nach der ein unbenutzes Element aus dem Cache entfernt wird
(0 für unbegrenzt).
timeToLive
Die Zeit in Sekunden, die ein Element maximal im Cache enthalten sein darf, bevor
es aus dem Cache entfernt wird (0 für unbegrenzt).
Die anderen Cache-Eigenschaften sollten nicht geändert werden.
Live-Server und Vorschau im Redaktionssystem
permissions
Die Live-Leserechte können gecached werden, um die Zugriffe zu beschleunigen. Die
Cache-Elemente sind klein im Vergleich zu Cache-Elementen beispielsweise für Seiten und
belasten das System nicht. Im Redaktionssystem sollte die Lebensdauer der Cache-Objekte
nicht zu groß gewählt werden, um Änderungen an den Live-Leserechten in der Vorschau
zeitnah widerspiegeln zu können.
velocity
Dynamische Inhalte werden mit Hilfe der Velocity Template Engine erzeugt. Um dies zu
beschleunigen, können die Templates geparsed im Cache abgelegt werden. Im
Redaktionssystem wird typischerweise kein solcher Cache eingesetzt, um die Sichtbarkeit
von Änderungen an Dateien und Layouts sicherzustellen.
Redaktionssystem
Im Redaktionssystem können für die folgenden Elemente Caches eingerichtet werden:
user
Die Benutzer des Redaktionssystems. Die Anzahl der Elemente sollte auf die Anzahl der bekannten
Benutzer und die Zahl der maximal gleichzeitig angemeldeten Benutzer abgestimmt sein.
groups
Die Benutzergruppen im Redaktionssystem. Die Anzahl der Elemente sollte auf die Anzahl der bekannten
Gruppen abgestimmt sein.
live-groups
Die Benutzergruppen für die Live-Leserechte. Die Anzahl der Elemente sollte auf die
Anzahl der bekannten Gruppen abgestimmt sein.
attributes
Die Felder der Vorlagen. Die Anzahl sollte auf die Anzahl der konfigurierten
Felder der am häufigsten verwendeten Vorlagen abgestimmt werden.
objClasses
Die Vorlagen. Die Anzahl sollte auf die Anzahl der am häufigsten verwendeten Vorlagen abgestimmt
werden.
channels
Die Channels, denen Inhalte zugeordnet werden können. Meist gibt es nur wenige
Channels. Deshalb sollte die Anzahl der Elemente der Anzahl der definierten Channels
entsprechen oder geringfügig größer sein.
workflows
Die Workflows. Die Anzahl der Elemente kann analog zu der Anzahl
für die Channels konfiguriert werden.
pages
Die im Redaktionssystem geöffneten Seiten. Die Anzahl ist theoretisch unbegrenzt
und sollte nicht herabgesetzt werden. Die Seiten werden spätestens aus dem Cache
entfernt, nachdem sie die konfigurierte timeToIdle
-Zeit nicht mehr im
Browser angezeigt wurden.