Memcache

Der Memcache Service stellt eine mächtige Memory Cache Funktionalität zur Verfügung.
Wodurch man in der Lage ist Daten als Session jeweilig als Schlüssel-Wert Paar zu speichern, die sogar über mehre Applikationsinstanzen verfügbar sind.
Dieses ist sehr nützlich wenn man nicht gleich den Datastore nutzen will, Abfragen reduzieren will oder erst eine Summe oder ein Produkt der Daten in den Datastore speichern möchte.

Mit der Methode add wird dem Memory Cache ein Schlüssel hinzugefügt, der erste Parameter repräsentiert den Bezeichner also den Name des Schlüssels, der zweite Parameter enthält den Wert der im Cache gespeichert werden soll, der dritte optinale Parameter stellt die Zeit in Sekunden dar wie lange der Schlüssel mit Wert im Cache vorgehalten wird, als Standard ist 0 gesetzt was den maximalen Wert darstellt. Der maximale Wert der gespeichert werden kann ist auf 1MByte beschränkt.

Die Methode set ersetzt den Wert eines Schlüssels im Cache. Mehrere Werte kann man mit der Methode set_multi gleichzeitig setzen. Mit replace und replace_multi ist es auch möglich ein oder mehrere Schlüsselwerte zu ersetzen.

Die Methode get mit dem gewünschten Schlüssel als Parameter gibt dann denn entsprechenden Wert zurück.

memcache.add(key="uid", value=1234, time=3600)

memcache.add("key", value)
memcache.get("key")

memcache.set("key", new_value)
memcache.set_mulit({"First": "Alpha", "Second": "Beta"})

Einen bestimmten Schlüssel aus dem Cache kann man mit delete und dem Schlüssel als Parameter löschen. Mehrer Schlüssel löscht man entsprechend mit delete_multi. Den gesamten Cache zu löschen ist mit flush_all ohne Parameter möglich.

memcache.delete("key")

memcache.delete_multi({"First","Second"})

memcache.flush_all()

Leave a Reply