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


Von Zend_Date und den ersten Tagen im Jahr

Autor*in: Benjamin Hofmann


Technologie


Ebene bin ich auf eine interessante Sache bei der Verwendung von Zend_Date und dessen Datumskonstanten (Link) gestoßen. Verwendet man die Konstante Zend_Date::YEAR_8601, die sich nach ISO 8601 richtet, wird das Jahr nicht nach der Woche berechnet, in der sich der gegebene Tag befindet. Nun ist es ja bekanntermaßen so, dass sich die letzte Woche eines …


Beitrag lesen
19
DEZ
11

Google Analytics in Verbindung mit Google Tag Manager

Autor*in: Stefan Oswald


Projekte // Technologie


Wenn Google Analytics über den Google Tag Manager eingebunden wird, ist zu beachten, dass trotzdem noch die jeweilige GA-Account-ID mit angegeben werden muss. Das kann man entweder im Header des Codes machen, oder direkt bei jedem Tracking-Aufruf. Bei GAv2 sieht das z.B. so aus: _gaq.push([‚_setAccount‘, ‚UA-123456789-0‘]); _gaq.push([‚_trackEvent‘, ‚category‘, ‚action‘, ‚label‘]); Der GTM bindet logischer Weise …


Beitrag lesen
09
MAI
14

KI gestützte Designtools

Autor*in: Carina Kruse


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


Vor einer Weile stieß ich in einem Google Pocket Artikel auf die WebApp AutoDraw. Es erlangte meine Aufmerksamkeit dadurch, dass aus jeder Zeichnung, welche man rudimentär mit der Maus malte, das Programm ein passendes Icon generierte. Also aus den eigenen Scribbles direkt ein passendes Icon abfällt. Soweit genial, oder? Da musste ich mir direkt das …


Beitrag lesen
28
APR
22

Open Graph Tags in der imx.Library

Autor*in: Bastian Schwarz


Technologie


Soeben habe ich eine neue Version des MetainfoGenerators bereitgestellt, der einen Builder und einen Renderer für die Open Graph Tags beinhaltet. Die Logiken zur Einbindung sind nicht im „Mock“-Smartyplugin enthalten, da die Logik sich von Portal zu Portal unterscheiden kann. Wicht dafür ist, dass die Open Graph Tags mind. aus title, image, url und type …


Beitrag lesen
04
SEP
12