Zoeken…


Invoering

Verbinding maken met Redis in Python vereist het gebruik van een clientbibliotheek. Er bestaan veel verschillende clientbibliotheken voor Python, maar redis-py is een van de meest populaire clients in gebruik.

Nadat u uw clientbibliotheek hebt geïnstalleerd, hebt u toegang tot Redis in uw toepassing door de juiste module te importeren, een verbinding tot stand te brengen en vervolgens een opdracht uit te voeren.

Opmerkingen

Om via Redis verbinding te maken met Python, moet u een client installeren. U kunt installeren met pip met behulp van:

pip install redis

dit zal redis-py installeren

Optioneel wilt u misschien hiredis-py installeren waarmee het parseren van protocolberichten wordt overgedragen aan de C hiredis-client. Dit kan in veel situaties een aanzienlijke prestatieverbetering opleveren. U kunt hiredis met pip installeren door het volgende uit te voeren:

pip install hiredis

Element toevoegen aan lijst

import redis

r = redis.StrictRedis(host='localhost', port=6379, db=0)

r.lpush('myqueue','myelement')

Velden toevoegen aan een hash

Er zijn twee hoofdfuncties in Redis (HSET en HMSET) voor het toevoegen van velden aan een hash-toets. Beide functies zijn beschikbaar in redis-py.

HSET gebruiken:

import redis

r = redis.StrictRedis(host='myserver', port=6379, db=0)
r.hset('my_key', 'field0', 'value0')

HMSET gebruiken:

import redis

r = redis.StrictRedis(host='myserver', port=6379, db=0)
r.hmset('my_key', {'field0': 'value0', 'field1':'value1', 'field2':'value2'}

Een verbinding met Redis opzetten

De redis-py client biedt twee klassen StrictRedis en Redis om een eenvoudige verbinding met een Redis gegevensbestand op te zetten. De Redis klasse is bedoeld voor achterwaartse compatibiliteit en nieuwe projecten moeten de StrictRedis klasse gebruiken.

Een van de aanbevolen manieren om een verbinding tot stand te brengen, is om de verbindingsparameters in een woordenboek te definiëren en het woordenboek door te geven aan de StrictRedis constructor met behulp van de syntaxis ** .

conn_params = {
    "host": "myredis.somedomain.com",
    "port": 6379,
    "password": "sekret",
    "db": 0
}

r = redis.StrictRedis(**config)

Een transactie aanmaken

U kunt een transactie tot stand brengen door de pipeline methode op de StrictRedis aan te StrictRedis . Redis-opdrachten die tegen de transactie worden uitgevoerd, worden in een enkel blok uitgevoerd.

# defaults to transaction=True 
tx = r.pipeline()
tx.hincrbyfloat(debit_account_key, 'balance', -amount)
tx.hincrbyfloat(credit_account_key, 'balance', amount)
tx.execute()

Opdrachten direct uitvoeren

Redis-py biedt de methode execute_command om execute_command bewerkingen rechtstreeks op te roepen. Deze functionaliteit kan worden gebruikt om toegang te krijgen tot modules die mogelijk geen ondersteunde interface in de redis-py-client hebben. U kunt bijvoorbeeld de opdracht execute_command om alle modules weer te geven die in een Redis-server zijn geladen:

r.execute_command('MODULE', 'LIST')


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow