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


jQuery(document).unbind() löscht alle entsprechenden live event handler

Autor*in: Axel Güldner


Technologie


Beim Deployment des Bremen Portals ist mir heute eine Eigenheit von jQuery aufgefallen, der ich mir bisher nicht bewusst war. Auf der Startseite werden im Keyvisual kleine Teaserfenster bei Mouseover über so rote Infobubbles geöffnet. Die BTZ hatte sich nun gewünscht, dass diese Infofenster wieder geschlossen werden, sobald der User irgendwo außerhalb des Fensters klickt. …


Beitrag lesen
24
JAN
12

Mit HeidiSQL per SSH-Tunel auf Live-Systeme verbinden

Autor*in: Stefan Oswald


Technologie


Unsere Produktiv-Systeme akzeptieren aus Sicherheitsgründen keine Verbindungen mit dem MySQL-Server von externen Adressen. Dennoch möchte man manchmal mit einem anderen Tool als phpMyAdmin auf die Datenbanken sehen. Die Lösung hierfür ist ein SSH-Tunnel. Einfacher Hintergrund: Statt auf den normalen MySQL-Port verbinden wir uns über den SSH-Server mit dem Zielsystem. Dort angekommen können wir uns mit …


Beitrag lesen
23
APR
12

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

Und täglich grüßt die rote Leiste ;)

Autor*in: Benjamin Hofmann


Technologie


Hier mal ein kleiner Link-Tipp zu einer Seite mit sehr sehenswerten Comics, die sich mit typischen Entwickler-Themen beschäftigt: Geek&Poke. Die letzten drei Comics haben sich mit typischen Problemen beim Unit-Testing in Verbindung mit Continuous Integration beschäftigt und sprechen wahrscheinlich jedem von uns aus der Seele. Und ich glaube nicht daran, dass jemand von uns noch …


Beitrag lesen
20
FEB
17