Recherche…


Introduction

La connexion à Redis en Python nécessite l'utilisation d'une bibliothèque client. Il existe de nombreuses bibliothèques client pour Python, mais redis-py est l’un des clients les plus populaires.

Une fois la bibliothèque client installée, vous pouvez accéder à Redis dans votre application en important le module approprié, en établissant une connexion, puis en exécutant une commande.

Remarques

Pour vous connecter sur redis avec python, vous devez installer un client . Vous pouvez installer avec pip en utilisant:

pip install redis

cela va installer redis-py

Vous pouvez éventuellement installer hiredis-py qui délègue l'analyse des messages de protocole au client C hiredis. Cela peut apporter une amélioration significative des performances dans de nombreuses situations. Vous pouvez installer hiredis avec pip en exécutant:

pip install hiredis

Ajouter un élément à la liste

import redis

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

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

Ajout de champs à un hachage

Il y a deux fonctions principales dans Redis (HSET et HMSET) pour ajouter des champs à une clé de hachage. Les deux fonctions sont disponibles en redis-py.

Utiliser HSET:

import redis

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

En utilisant HMSET:

import redis

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

Configuration d'une connexion à Redis

Le client redis-py fournit deux classes StrictRedis et Redis pour établir une connexion de base à une base de données Redis. La classe Redis est fournie pour la rétrocompatibilité et les nouveaux projets doivent utiliser la classe StrictRedis .

L'une des méthodes recommandées pour établir une connexion consiste à définir les paramètres de connexion dans un dictionnaire et à transmettre le dictionnaire au constructeur StrictRedis à l'aide de la syntaxe ** .

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

r = redis.StrictRedis(**config)

Créer une transaction

Vous pouvez établir une transaction en appelant la méthode de pipeline sur StrictRedis . Les commandes redis exécutées sur la transaction sont effectuées dans un seul bloc.

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

Exécuter des commandes directement

Redis-py fournit la méthode execute_command pour appeler directement les opérations Redis. Cette fonctionnalité peut être utilisée pour accéder à tous les modules qui peuvent ne pas avoir une interface prise en charge dans le client redis-py. Par exemple, vous pouvez utiliser la commande execute_command pour répertorier tous les modules chargés sur un serveur Redis:

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


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow