Comment utiliser Redis avec Python

Comment utiliser Redis avec Python

Dans ce didacticiel, vous apprendrez à utiliser Python avec Redis (prononcé RED-iss, ou peut-être https://groups.google.com/forum/#!topic/redis-db/MtwjZC5gCeE [REE-diss] ou Red-DEES, selon la personne à qui vous demandez), ce qui est un souvenir ultra-rapide en mémoire magasin de valeurs-clés qui peut être utilisé pour tout, de A à Z. Voici ce que Seven Databases in Seven Weeks, un livre populaire sur les bases de données, a à dire sur Redis:

_ _ Ce n’est pas simplement facile à utiliser; c’est une joie. Si une API est UX pour les programmeurs, alors Redis devrait être au Museum of Modern Art aux côtés du Mac Cube.

Et en ce qui concerne la vitesse, Redis est difficile à battre. Les lectures sont rapides et les écritures sont encore plus rapides, gérant jusqu’à 100 000 opérations + SET + par seconde selon certains tests de référence. (Source) _ _

Intrigué? Ce tutoriel est conçu pour le programmeur Python qui peut avoir de zéro à peu d’expérience Redis. Nous aborderons deux outils à la fois et présenterons Redis lui-même ainsi qu’une de ses bibliothèques clientes Python, https://github.com/andymccurdy/redis-py [+ redis-py +].

+ redis-py + (que vous importez simplement + redis +) est l’un des nombreux clients Python pour Redis, mais il a la particularité d’être facturé en tant que currently le chemin à parcourir pour Python " par les développeurs Redis eux-mêmes. Il vous permet d’appeler des commandes Redis à partir de Python et de récupérer en retour des objets Python familiers.

*Dans ce didacticiel, vous allez couvrir* :
  • Installer Redis à partir de la source et comprendre le but des binaires résultants

  • Apprendre une tranche de Redis lui-même, y compris sa syntaxe, son protocole et sa conception

  • Maîtriser + redis-py + tout en ayant un aperçu de la façon dont il implémente le protocole de Redis

  • Configuration et communication avec une instance de serveur Amazon ElastiCache Redis

    *Bonus gratuit:* lien: [Cliquez ici pour accéder à un chapitre de Python Tricks: The Book] qui vous montre les meilleures pratiques de Python avec des exemples simples que vous pouvez appliquer instantanément pour écrire du code Pythonic plus beau +.

Installer Redis à partir de la source

Comme mon arrière-arrière-grand-père l’a dit, rien ne construit du grain comme l’installation à partir de la source. Cette section vous guidera à travers le téléchargement, la création et l’installation de Redis. Je vous promets que cela ne fera aucun mal!

*Remarque* : Cette section est orientée vers l'installation sur Mac OS X ou Linux. Si vous utilisez Windows, il existe un https://github.com/MicrosoftArchive/redis[fork] Microsoft de Redis qui peut être installé en tant que service Windows. Il suffit de dire que Redis en tant que programme vit le plus confortablement sur une boîte Linux et que la configuration et l'utilisation sur Windows peuvent être difficiles.

Tout d’abord, téléchargez le code source de Redis sous forme de tarball:

$ redisurl="http://download.redis.io/redis-stable.tar.gz"
$ curl -s -o redis-stable.tar.gz $redisurl

Ensuite, passez à + ​​root + et extrayez le code source de l’archive dans /usr/local/lib/:

$ sudo su root
$ mkdir -p/usr/local/lib/
$ chmod a+w/usr/local/lib/
$ tar -C/usr/local/lib/-xzf redis-stable.tar.gz

En option, vous pouvez maintenant supprimer l’archive elle-même:

$ rm redis-stable.tar.gz

Cela vous laissera un dépôt de code source dans /usr/local/lib/redis-stable/. Redis est écrit en C, vous devrez donc compiler, lier et installer avec l’utilitaire + make +:

$ cd/usr/local/lib/redis-stable/
$ make && make install

Utiliser + make install + fait deux actions:

  1. La première commande + make + compile et relie le code source.

  2. La partie + make install + prend les binaires et les copie dans /usr/local/bin/ afin que vous puissiez les exécuter de n’importe où (en supposant que +/usr/local/bin/+ 'est dans + CHEMIN + `).

Voici toutes les étapes jusqu’à présent:

$ redisurl="http://download.redis.io/redis-stable.tar.gz"
$ curl -s -o redis-stable.tar.gz $redisurl
$ sudo su root
$ mkdir -p/usr/local/lib/
$ chmod a+w/usr/local/lib/
$ tar -C/usr/local/lib/-xzf redis-stable.tar.gz
$ rm redis-stable.tar.gz
$ cd/usr/local/lib/redis-stable/
$ make && make install

À ce stade, prenez un moment pour confirmer que Redis est dans votre + PATH + et vérifiez sa version:

$ redis-cli --version
redis-cli 5.0.3

Si votre shell ne trouve pas + redis-cli +, assurez-vous que /usr/local/bin/ est dans votre variable d’environnement + PATH +, et ajoutez-le sinon.

En plus de + redis-cli +, + make install + mène en fait à une poignée de différents fichiers exécutables (et un lien symbolique) placés dans `/usr/local/bin/ ':

$ # A snapshot of executables that come bundled with Redis
$ ls -hFG/usr/local/bin/redis-* | sort
/usr/local/bin/redis-benchmark*
/usr/local/bin/redis-check-aof*
/usr/local/bin/redis-check-rdb*
/usr/local/bin/redis-cli*
/usr/local/bin/redis-sentinel@
/usr/local/bin/redis-server*

Bien que tous ces éléments aient une utilisation prévue, les deux qui vous intéresseront probablement le plus sont + redis-cli + et + redis-server +, que nous allons décrire brièvement. Mais avant d’en arriver là, la mise en place d’une configuration de base est en ordre.

Configuration de Redis

Redis est hautement configurable. Bien que cela fonctionne correctement, prenons une minute pour définir quelques options de configuration à nu concernant la persistance de la base de données et la sécurité de base:

$ sudo su root
$ mkdir -p/etc/redis/
$ touch/etc/redis/6379.conf

Maintenant, écrivez ce qui suit dans +/etc/redis/6379.conf +. Nous couvrirons ce que la plupart d’entre eux signifient progressivement tout au long du didacticiel:

#/etc/redis/6379.conf

port              6379
daemonize         yes
save              60 1
bind              127.0.0.1
tcp-keepalive     300
dbfilename        dump.rdb
dir               ./
rdbcompression    yes

La configuration de Redis est auto-documentée, avec le sample + redis.conf + file situé dans la source Redis pour votre plaisir de lecture. Si vous utilisez Redis dans un système de production, il est utile de bloquer toutes les distractions et de prendre le temps de lire cet exemple de fichier en entier pour vous familiariser avec les tenants et aboutissants de Redis et affiner votre configuration.

Certains didacticiels, y compris des parties de la documentation de Redis, peuvent également suggérer d’exécuter le script Shell + install_server.sh + situé dans +redis/utils/install_server.sh + `. Vous êtes certainement le bienvenu pour exécuter ceci comme une alternative plus complète à ce qui précède, mais prenez note de quelques points plus fins sur `+ install_server.sh +