Redis®*: Premiers pas

Guide rapide pour débuter avec Redis

👋 Bienvenue sur la documentation de Stackhero !

Stackhero propose une solution Redis cloud prête à l'emploi qui offre de nombreux avantages, notamment :

  • Interface web Redis Commander incluse.
  • Taille des messages et transferts illimités.
  • Mises à jour simplifiées en un clic.
  • Performance optimale et sécurité renforcée grâce à une VM privée et dédiée.

Gagnez du temps et simplifiez-vous la vie : il suffit de 5 minutes pour essayer la solution Redis cloud hosting de Stackhero !

Redis est une base de données en mémoire puissante et extrêmement rapide qui peut remplir plusieurs rôles. Vous pouvez l'utiliser comme cache, comme key-value store, comme moteur de structures de données en temps réel, ou encore comme système de publication/abonnement et d'événements.

Redis est à nouveau open source : depuis Redis 8 (mai 2025), il est disponible sous licence GNU AGPLv3. Si vous préférez une alternative compatible sous licence permissive (BSD), le fork communautaire Valkey est également disponible sur Stackhero.

Pour faciliter vos premiers pas, nous avons partagé des exemples de code montrant comment se connecter à une instance Redis. Vous pouvez les retrouver dans ce dépôt GitHub : https://github.com/stackhero-io/redisGettingStarted.

Pour commencer, vous pouvez installer la gem redis avec :

bundle add redis

Ensuite, ouvrez config/environments/production.rb et ajoutez la ligne suivante :

config.cache_store = :redis_cache_store, { url: ENV["REDIS_URL"] }

Vous pouvez ensuite définir la variable d'environnement REDIS_URL. Voici un modèle à adapter avec vos propres informations :

REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:<PORT_TLS>"

Par défaut, le cache est activé uniquement en environnement de production. Si vous souhaitez tester le cache en développement, vous pouvez également modifier config/environments/development.rb. Ajoutez la même configuration que ci-dessus et incluez config.action_controller.perform_caching = true pour activer le cache. Une façon simple de vérifier que le cache fonctionne est de lancer une console Rails avec bin/rails console et d'essayer Rails.cache.write("foo", "bar").

Pour plus de détails sur l'utilisation de Redis comme cache store dans Ruby on Rails, consultez la documentation officielle de Rails.

Sidekiq utilise automatiquement le serveur Redis défini dans la variable d'environnement REDIS_URL.

Vous pouvez définir REDIS_URL avec vos propres informations de connexion comme ceci :

REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:<PORT_TLS>"

Pour plus d'informations sur l'utilisation de Sidekiq avec Redis, vous pouvez consulter la documentation officielle de Sidekiq.

Comme Sidekiq, Resque utilise le serveur Redis défini dans la variable d'environnement REDIS_URL.

Vous pouvez définir REDIS_URL avec vos propres paramètres comme ceci :

REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:<PORT_TLS>"

Pour plus d'informations sur l'utilisation de Resque avec Redis, vous pouvez consulter la documentation officielle de Resque.

Si vous souhaitez stocker les sessions PHP sur Stackhero for Redis, vous pouvez utiliser l'exemple suivant :

<?php

// Analyse de l'URL Redis
$redis_url = parse_url("rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:<PORT_TLS>")

// Configuration du gestionnaire de session
ini_set("session.save_handler", "redis")
ini_set("session.save_path", "tls://{$redis_url["host"]}:{$redis_url["port"]}?auth={$redis_url["pass"]}&timeout=5")

// Démarrage de la session
session_start()

?>

Sécuriser votre instance Redis est essentiel, et quelques mesures simples peuvent faire une réelle différence.

Par défaut, Redis ne chiffre pas le trafic réseau. Sur Stackhero, le chiffrement TLS est activé par défaut.

Pour en bénéficier, configurez votre client Redis pour utiliser TLS et connectez-vous via le port <PORT_TLS>. Il est préférable d'utiliser <PORT_CLEAR> uniquement pour des cas spécifiques où le trafic non chiffré est nécessaire, tandis que <PORT_TLS> assure une communication sécurisée.

Bonne nouvelle, il n'y a rien à configurer côté serveur. Nous nous occupons déjà de cette partie pour vous.

Votre instance Redis est protégée par un mot de passe, et Stackhero en génère automatiquement un très robuste par défaut. Si vous décidez de le modifier, privilégiez un mot de passe très long et complexe.

Redis est extrêmement rapide et peut traiter un très grand nombre de tentatives d'authentification. En pratique, cela signifie qu'un attaquant pourrait essayer jusqu'à 150 000 combinaisons de mots de passe par seconde.

Pour renforcer la protection, nous imposons une longueur minimale de mot de passe de 16 caractères, ce qui représente environ 4.5231285e+74 combinaisons possibles. Par défaut, Stackhero utilise un mot de passe de 64 caractères, soit environ 9.61963e+111 combinaisons possibles.

Pour une sécurité encore plus renforcée, vous pouvez également configurer les règles du firewall Stackhero depuis l'onglet Firewall afin d'autoriser les connexions uniquement depuis vos propres adresses IP. C'est l'une des méthodes les plus efficaces pour améliorer la sécurité globale de votre instance.