Caching – Probleme mit Permissions

Datum: 13. Januar 2017
Autor*in: Florian Müller


Ich war gerade an einem Ticket um eine Lösung für das leidige Thema des Caching der Autosuggest zu lösen. Das grundlegende Problem ist, dass das Autosuggest recht umfangreich ist (gecached bis zu 2MB). Sollte nun ein User ein Wort eingeben und kein Autosuggest vorhanden sein, wurde dieser gebaut und gecached. Die hat auch mal gerne eine Minute oder länger gedauert. Also viel zu lang.

Um dies zu umgehen, wurde ein Cron Job entwickelt, welcher den Cache in der Nacht erneuert. Das Problem war nun jedoch schlussendlich, der Projekt User auf dem Server hat den Cron Job ausgeführt und Zend_Cache hat den Cache mit den Rechten 0600 (Standard Wert durch Zend) abgespeichert. Nun wollte der Webserver-User (www-data) diese lesen, jedoch fehlten dafür die nötigen Rechte. Also hat dieser wieder den ganzen Prozess gestartet, den Autosuggest Cache zu bauen.

Schlussendlich gab es hier eine relativ einfache Lösung:


$backendOptions = array(
'cache_dir' => realpath($cachePath),
'cache_file_umask' => '0777',
'cache_file_perm' => '0777'
);

Diese Optionen ermöglichen es, dass unabhängig vom User die Cache Files benutzt werden können.


Dieser Artikel wurde verschlagwortet unter:


Kommentare

Selber kommentieren:






Weitere Beiträge zum Thema Technologie


Templating with good ol‘ Javascript

Autor*in: Benjamin Hofmann


Technologie


Die letzten Tage bin ich auf eine interessante Technik gestoßen, mit der man ein sehr simples Templating in Vanilla JS umsetzen kann. Das Ganze orintiert sich an den Techniken, die z.B. Handlebars.js oder die originale Micro-Templating-Technik von John Resig nutzen, ist jedoch deutlich kleiner. Der Code Der komplette Code basiert auf RequireJS, kann aber natürlich …


Beitrag lesen
29
SEP
16

GOTO Berlin 2017 – Teil 2

Autor*in:


Technologie


Hier nun Teil 2 meines Berichts zur GOTO Berlin. Nach dem Container & Kubernetes Security Workshop am Mittwoch und dem ersten Haupt-Konferenztag am Donnerstag (Bericht hier), rundete der ML-Track am Freitag, 17. November, meine Themenwahl ab. Einen beeindruckenden Einstieg in den Tag lieferte Prof. D’Andreas Keynote „Drones on Broadway“, bei der auf die Forschung im …


Beitrag lesen
19
DEZ
17

JIT Grunt

Autor*in: Florian Müller


Technologie


Dieser Beitrag nimmt Bezug auf meinen vorherigen Beitrag zur Optimierung von Grunt. Wer diesen nicht kennt, wird mit diesem hier nicht viel anfangen können. Wer den Concurrent Task und dazu auch den Time-Grunt einsetzt, mag schon mal bemerkt haben, dass bei jedem Concurrent Task sämtliche Tasks geladen. Auf dem DEV dauert dies auch mal gerne 2 …


Beitrag lesen
08
FEB
17

lory

Autor*in: Benjamin Hofmann


Technologie // User Experience & Design


Und schon wieder habe ich eine kleine schöne Javascript-Library gefunden: lory. Diesmal ist es keine Lightbox-Lösung wie PhotoSwipe gestern, sondern ein simpler Slider. Auch dieses Skript ist auf den mobilen Anwendungsfall ausgelegt und kann von Haus aus mit Swipes umgehen. Auch das sogenannte Infinite-Sliding ist möglich und auch dieses Skript lässt sich über RequireJS nutzen …


Beitrag lesen
23
SEP
16