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


imxTools1 und imxTools2 in einem Portal… erste Schritte sind gegangen

Autor*in: Bastian Schwarz


Technologie


Im Zuge des Schneebayern-Projektes besteht die Anforderung, dass die imxTools1 (für allgemeine imxTools-Inhalte) sowie die imxTools2 (für den Schneehöhenticker) parallel zueinander laufen müssen. Dazu wurde ein neuer Task in der build.xml angelegt, der eigtl genau das gleiche tut wie der register_integration_imxtools, nur dass er das Ziel in einen imxtools2 Ordner anlegt. Auszug aus der build.properties: …


Beitrag lesen
25
NOV
11

Preload – was bringts?

Autor*in:


Technologie


Im Laufe der Umsetzung des Grassau-Portals habe ich mich mal mit Preloading im html auseinandergesetzt. Benutzt wird das Ganze, um Resourcen wie z.B. Styles, Fonts etc. effizienter laden zu können und somit die Performance zu verbessern. Der Vorteil gegenüber dem ja inzwischen schon etwas älteren Prefetching ist, dass im Tag ein Type angegeben wird, der …


Beitrag lesen
28
FEB
17

AJAX Ladeschnecke ohne Bilder oder zusätzlichem CSS

Autor*in: Stefan Oswald


Technologie // User Experience & Design


Der Anwendungsfall tritt sehr oft ein: Eine Ergebnisliste soll nachgefiltert werden, und zur Visualisierung, dass gerade etwas im Hintergrund passiert, soll eine „Ladeschnecke“ (oder vielleicht etwas old-school-mäßig ein Fortschrittsbalken) angezeigt werden. Oftmals wird das so umgesetzt, dass man im „beforeLoad“-Ereignis des AJAX-Calls eine animierte Grafik hinzufügt, welche im „complete“-Ereignis wieder entfernt oder unsichtbar gemacht wird. …


Beitrag lesen
23
JUL
14

JavaScript, HTML5 & Angular Days 2016

Autor*in:


Technologie // Über den Tellerrand // User Experience & Design


Einige von uns Portalentwicklern waren im Oktober in Berlin auf den JavaScript, HTML5 & Angular Days 2016. Hier nachträglich noch kurz meine und Bennis Highlights: „Dem Benedikt seine Highlights“ CSS3 Flexbox Der Style „display: flex;“ ist ein unglaublich flexibles und simples Werkzeug, um Responsivität in die kleinsten Module zu bringen. Wo wir heute noch mit Style-Hacks arbeiten, …


Beitrag lesen
28
NOV
16