collective.warmup ist ein Tool, um den Cache einer Webseite aufzuwärmen. Dabei werden die Konfigurationsdateien gelesen und eine Reihe von Seiten automatisch untersucht.

Plone Zope: CMS-Cache aufwärmen mit collective-warmup

collective.warmup ist ein Tool, um den Cache einer Webseite aufzuwärmen. Dabei werden die Konfigurationsdateien gelesen und eine Reihe von Seiten automatisch untersucht.

Wenn wir eine Web-Applikation, z.B. ein CMS starten, dann empfiehlt es sich, das Cache-System auf den Hauptseiten der Webseite aufzuwärmen. Mit dieser Tätigkeit erhält man sofort schnellere Anworten der Applikation und sie kann auf unterschiedliche Weise automatisiert werden.

Um dieses Verfahren besser konfigurieren, reproduzieren und kontrollieren zu können, haben wir collective.warmup geschaffen.

Funktion

collective.warmup kann mit dem folgenden Befehl wie ein beliebiges phyton-Paket installiert werden:

$ pip install collective.warmup

Nach der Installation kann man eine Konfigurationsdatei schaffen, die die URL enthält, für die wir den Cache aufwärmen wollen. Z.B.:

[warmup]
enabled = True
sleep = 2
base_url = http://abstract.it
logfile = /path/to/warmup.log

urls =
    Home page
Prodotti

[Home page]
path = /
max_attempts = 2
check_exists =
    Welcome
...


[Prodotti]
path = /prodotti
max_attempts = 2
check_exists =
    Products
...

Nach dem Speichern der Datei warmup.cfg können wir das warmup Script folgendermaßen ausführen:

$ warmup warmup.cfg

collective.warmup wird die verschiedenen Teile der Konfigurationsdatei lesen (Homepage, Produkte... usw.)  und die dargestellten Webseiten aufrufen.

Nach dem Ausführen des Programms können wir den Output in der Log.Datei (in diesem Fall warmup.log) analysieren.

Wir können das Aufwärmen auch einer CRON Task übertragen, damit das Verfahren automatisiert wird und den Output von einem Log-Analyse-System verarbeiten lassen, damit wir die Ausführungsmitteilungen erhalten.

Verwendung mit Zope und Plone (interner Cache)

Da wir bei Plone auch ein internes Cache-System haben, können wir das Aufwärmen auch mit dem direkten Aufruf der Aufgabe von Zope ausführen.

Wir können also Zope so konfigurieren, dass es automatisch bei jedem Start den Warmup ausführt. Also:

[buildout]
...
parts =
...
warmup


[instance]
...
eggs +=
    collective.warmup
environment-vars +=
    WARMUP_BIN ${buildout:directory}/bin/warmup
    WARMUP_INI ${buildout:directory}/warmup.ini


[warmup]
recipe = zc.recipe.egg:scripts
eggs = collective.warmup

Abschlussbemerkungen

Die Veröffentlichung einer Applikation im Internet besteht aus einer Reihe von Verbesserungen, die ausgeführt werden müssen, damit sie vom Zielpublikum besser benutzt werden kann. Die Konfiguration eines Aufwärmsystems ist von daher ein Schritt, um den Besuchern die richtige Antwort auf ihre Erwartungen zu geben.

Weitere Informationen und Details zur Konfiguration und Installation können Sie hier finden:

Helfen Sie uns bei der Verbesserung

Sie können den Code von collective.warmup unter folgender Adresse https://github.com/collective/collective.warmup auf github finden. Helfen Sie uns bei den Verbesserungen und nennen Sie uns die Fehler oder geben Sie uns neue Anregungen.

Der Code wird mit GPL-Lizenz ausgegeben und ist von daher Open Source, damit alle das Produkt frei nutzen und zu dessen Verbesserung beitragen können.

Teilen Sie uns Ihre Ideen und Erfahrungen beim Deploy einer Web-Applikation mit. Was ist Ihre Meinung?

Teilen auf

Share |

Zu gleichen Themen

Kommentare

comments powered by Disqus