Öffnet man die offizielle Website von Redis
Öffnet man die offizielle Website von Redis, steht dort als erster Satz, dass Redis ein Open-Source-In-Memory-Datenstrukturspeicher ist, der häufig als Datenbank und Cache verwendet wird. Redis
ist sehr verbreitet.
Redis installieren
Sie können Redis
von der offiziellen Website installieren. Genau wie bei SQLite
. Nach der Installation stellt sich die Frage, wie man Redis
in Python
verwendet.
pip install redis
>>> import redis
>>> r = redis.Redis(host='localhost', port=6379, db=0)
>>> r.set('foo', 'bar')
True
>>> r.get('foo')
b'bar'
Die Python-Dokumentation bietet einige Beispiele. Hier taucht etwas wie pip
auf. pip
ist ein Paketverwaltungstool. Was ein Paketverwaltungstool ist, können Sie im Kapitel „Programmierumgebung kennenlernen“ nachlesen. pip
ist für Python
das, was Homebrew
für das macOS
-System ist.
pip
wird normalerweise bereits mit der Installation von Python
mitgeliefert. Wenn Ihr Computer mehrere Versionen von Python
und Pip
hat, können Sie die folgenden beiden Zeilen in Ihre ~/.bash_profile
-Datei einfügen:
alias python=/usr/local/Cellar/python@3.9/3.9.1_6/bin/python3
alias pip=/usr/local/Cellar/python@3.9/3.9.1_6/bin/pip3
Die Bedeutung besteht darin, eine bestimmte Version von python
und pip
festzulegen. Eine Möglichkeit besteht darin, sie über Homebrew
zu installieren. Es ist auch möglich, sie aus dem Quellcode zu erstellen und zu installieren.
make
make test
make install
$ redis-server
87684:C 10 Mar 2021 14:46:06.056 # oO0OoO0OoO0Oo Redis startet oO0OoO0OoO0Oo
87684:C 10 Mar 2021 14:46:06.056 # Redis Version=6.2.1, Bits=64, Commit=00000000, modifiziert=0, PID=87684, gerade gestartet
87684:C 10 Mar 2021 14:46:06.056 # Warnung: Keine Konfigurationsdatei angegeben, die Standardkonfiguration wird verwendet. Um eine Konfigurationsdatei anzugeben, verwenden Sie redis-server /pfad/zur/redis.conf
87684:M 10 Mar 2021 14:46:06.057 * Maximale Anzahl offener Dateien auf 10032 erhöht (ursprünglich auf 4864 gesetzt).
87684:M 10 Mar 2021 14:46:06.057 * Monotone Uhr: POSIX clock_gettime
...
Redis 6.2.1 (00000000/0) 64 Bit
...
87684:M 10 Mar 2021 14:46:06.058 # Server initialisiert
87684:M 10 Mar 2021 14:46:06.058 * Bereit, Verbindungen zu akzeptieren
Hier ist ein Auszug aus dem Inhalt. Wie man sieht, haben wir es bereits installiert. Die Versionsnummer 6.2.1
ist die neueste auf der offiziellen Website. Öffnen Sie ein weiteres Terminalfenster. Sie können versuchen, damit herumzuspielen:
$ redis-cli
127.0.0.1:6379> set a 2
OK
127.0.0.1:6379> get a
"2"
Führen Sie den folgenden Code aus.
import redis
r = redis.Redis(host='localhost', port=6379, db=0)
r.set('foo', 'bar')
print(r.get('foo'))
Ausgabe:
$ python fib_redis.py
b'bar'
Redis Cache Beispiel
来实现斐波那契数列的Redis
版本。
import redis
r = redis.Redis(host=’localhost’, port=6379, db=0)
def f(n):
nr = r.get(n)
if nr is not None:
return int(nr)
res_n = 0
if n < 2:
res_n = n
else:
res_n = f(n-1) + f(n-2)
r.set(n, res_n)
return res_n
print(f(10))
Das war’s schon!