Skip to content

HermeneusCacheManager: Zentraler Caching-Manager


Anwendungsfall

  • Hermeneus-Grundwortschatz wird häufig gebraucht und daher im Cache gespeichert.
  • Aus dem Hermeneus-Grundwortschatz wird für bestimmte Übungen ein großer Formenpool generiert und im Cache gespeichert.
  • Ein Redakteur ändert einen Eintrag im Glossarium oder ändert manuell eine Form.
  • Sämtliche Cache-Einträge, die auf dem Hermeneus-Grundwortschatz basieren, müssen gelöscht werden.

Funktionsweise

Der HermeneusCacheManager fungiert als Listener für bestimmte Laravel-Events und führt die Operationen für bestimmte Cache-Keys durch. Welche Events und Cache-Keys betroffen sind, wird durch eine Konstante in der Klasse definiert:

php
const DELETE_EVENTS = [
    'Event_GlossariumLemmaChanged' => [
        'array_of_strings_formengrill_verfuegbare_formen_aus_hermeneus_grundwortschatz',
        'collection_of_vocab_hermeneus_grundwortschatz'
    ],
    'TestEvent' => [
        'test_cache'
    ]
];

Registrierung eines neuen Events und Cache-Keys

  1. Mit php artisan make:event EventName neues Event erstellen. Eventklasse muss in app/Events liegen.
  2. Event in app/Providers/EventServiceProvider.php registrieren.
  3. Event und Cache-Key in der entsprechenden Konstante app/Services/HermeneusCacheManager.php registrieren.