CentOS – Redis installieren

Redis ist eine NoSQL In-Memory-Datenbank mit ein sogenannter Key Value Store. In dieser DB können Werte z.B Ergebisse von SQL-Datenbank-Abfragen zwischen gespeichert werden. Der Performancezuwachs bei richtiger Anwendung ist somit erheblich.

In diesem Tutorial wird gezeigt wir man einen Redis-Server unter CentOS 7 installiert. Vorraussetzung dafür ist ein installierter CentOS 7 mit aktivierten Epel-Repository.

Installation des Redis-Servers

Zuerst prüfen wie ob unser Epel-Repo richtig eingebunden ist und Redis in der gewünschten Version zur Verfügung steht.

Dies sollte dann einen Treffer finden.

Anschliessend installieren wir den Redis-Server mit dem Paketmananger yum.

Nun konfigurieren wir Redis für den automatischen Start beim Start des Systems.

Konfiguration von Redis

In der Datei /etc/redis.conf können wir den maximal verwendeten Speicher sowie noch anderen Konfigurationen editieren. z.B:

Anschliessend starten wir Redis. „CentOS – Redis installieren“ weiterlesen

Python – Flask Cache URL mit Query String als cache_key

Python Micro-Framework Flask
Python Micro-Framework Flask

Wer bei dem Python Microframework Flask die Cache-Funktion für URLs verwendet wird bemerkt haben, dass die Request-Argumente bzw. der Query String per default nicht beachtet wird und so bei verschiedenen Request-Argumenten immer die selbe Seite aus dem Cache ausgeliefert
wird.

Da dies oft nicht gewollt ist, muss eine Möglichkeit gefunden werden den Query String in den Cache_Key einzubeziehen.

Die Cache-Funktion von Flask bietet die Möglichkeit den key_prefix selbst zu definieren. Dass dies auch mit einer anderen Funktion möglich ist, wurde sehr schlau gedacht.

Wir erstellen uns dazu eine eigene Funktion make_cache_key. Dieser übergeben wir die Parameter von dem Seitenaufruf und bekommen einen gehashten Wert aus unseren request.path und den request.args.

Nun passen wir den key_prefix der Cache-Funktion an. „Python – Flask Cache URL mit Query String als cache_key“ weiterlesen