Redis, votre nouveau cache applicatif (GLMF)

Suivez-moi sur Identi.ca : http://identi.ca/carlchenet

Vos applications manquent de peps, que vous utilisiez ou non une base de données. Vous avez identifié des requêtes ou des résultats ré-utilisables qu’il est intéressant de conserver et pour lesquels regénérer un nouveau résultat n’est pas toujours pertinent selon le temps qui s’écoule entre deux sollicitations ? Redis est fait pour vous.

Comme Memcached, Redis est une base de données clé-valeur. Cela signifie que vous associez à une clé, en générale représentée par une chaîne de caractères, une donnée qui peut être elle aussi une chaîne de caractères mais aussi dans Redis une chaîne d’octets (donc au final un fichier), une liste ou un ensemble de valeurs. De plus Redis offre le support de la persistance des informations entrées, une fonctionnalité séduisante pour que avoir dès le chargement de votre cache applicatif un grand nombre d’éléments pré-chargée en mémoire ne nécessitant pas d’être regénérés.

Redis est empaqueté dans la plupart des distributions GNU/Linux. Sous Debian un simple :

# aptitude install redis-server

vous mettra en place sur votre système votre nouvelle base de données clé-valeur. Dès son installation, il  se met en écoute sur le port 6379 et attend vos ordres. La commande redis-cli vous permet de commencer à enregistrer vos données dans votre cache :

$ redis-cli set mystring « this is a string »

OK
$ redis-cli get mystring
this is a string

Mais la grande force de Redis réside dans sa capacité à être utilisé depuis de très nombreux langages dont Python, PHP, Ruby, C, Erlang (liste loin d’être exhaustive). Il offre aussi des intéressantes capacités de réplication dans le cadre de son utilisation en situation de production.

Même idée que Redis mais supporte moins de structures de données et n'est pas persistant

Un article complet sur Redis est paru dans le GNU/Linux Magazine France n°129 de ce mois-ci. Vous pourrez ainsi aller plus avant dans la découverte de cette base de données clé-valeur qui , loin de se cantonner aux acquis de Memcached, pousse bien plus loin le concept afin d’augmenter la réactivité de vos applications, qu’elles soient ou non orientées web.


Vus : 312
Publié par Carl Chenet : 277