redis                
            Łączenie się z redis za pomocą Pythona
        
        
            
    Szukaj…
Wprowadzenie
Łączenie się z Redis w Pythonie wymaga użycia biblioteki klienta. Istnieje wiele różnych bibliotek klienta dla Pythona, ale redis-py jest jednym z najpopularniejszych używanych klientów.
Po zainstalowaniu biblioteki klienta można uzyskać dostęp do Redis w aplikacji, importując odpowiedni moduł, nawiązując połączenie, a następnie wykonując polecenie.
Uwagi
Aby połączyć się z Redis za pomocą Pythona, musisz zainstalować klienta . Możesz zainstalować za pomocą pipa, używając:
pip install redis
 to zainstaluje redis-py
Opcjonalnie możesz zainstalować hiredis-py, który przekazuje parsowanie komunikatów protokołu klientowi C. hiredis. Może to zapewnić znaczną poprawę wydajności w wielu sytuacjach. Możesz zainstalować hiredis z pipem, wykonując:
pip install hiredis
        Dodaj element do listy
import redis
r = redis.StrictRedis(host='localhost', port=6379, db=0)
r.lpush('myqueue','myelement')
        Dodawanie pól do skrótu
Istnieją dwie główne funkcje w Redis (HSET i HMSET) do dodawania pól do klucza skrótu. Obie funkcje są dostępne w wersji redis-py.
Za pomocą HSET:
import redis
r = redis.StrictRedis(host='myserver', port=6379, db=0)
r.hset('my_key', 'field0', 'value0')
 Korzystanie z HMSET:
import redis
r = redis.StrictRedis(host='myserver', port=6379, db=0)
r.hmset('my_key', {'field0': 'value0', 'field1':'value1', 'field2':'value2'}
        Konfigurowanie połączenia z Redis
 Klient redis-py udostępnia dwie klasy StrictRedis i Redis celu ustanowienia podstawowego połączenia z bazą danych Redis. Klasa Redis zapewnia kompatybilność wsteczną, a nowe projekty powinny korzystać z klasy StrictRedis . 
 Jednym z zalecanych sposobów ustanowienia połączenia jest zdefiniowanie parametrów połączenia w słowniku i przekazanie słownika do konstruktora StrictRedis przy użyciu składni ** . 
conn_params = {
    "host": "myredis.somedomain.com",
    "port": 6379,
    "password": "sekret",
    "db": 0
}
r = redis.StrictRedis(**config)
        Tworzenie transakcji
 Możesz ustanowić transakcję, wywołując metodę pipeline na StrictRedis . Polecenia Redis wykonane dla transakcji są wykonywane w jednym bloku. 
# defaults to transaction=True 
tx = r.pipeline()
tx.hincrbyfloat(debit_account_key, 'balance', -amount)
tx.hincrbyfloat(credit_account_key, 'balance', amount)
tx.execute()
        Wykonywanie poleceń bezpośrednio
 Redis-py zapewnia metodę execute_command do bezpośredniego wywoływania operacji Redis. Z tej funkcji można uzyskać dostęp do modułów, które mogą nie mieć obsługiwanego interfejsu w kliencie redis-py. Na przykład możesz użyć polecenia execute_command aby wyświetlić listę wszystkich modułów załadowanych na serwer Redis: 
r.execute_command('MODULE', 'LIST')