[{"data":1,"prerenderedAt":158},["ShallowReactive",2],{"seo-verification":3,"blog-heberger-redis-vps-ma-fr":6,"promo-bar-likely":157},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"blog-heberger-redis-vps-ma-fr",{"id":9,"slug":10,"slugs":11,"title":15,"excerpt":16,"readTime":17,"views":18,"isPinned":19,"noindex":19,"publishedAt":20,"updatedAt":21,"category":22,"categories":28,"featuredImage":30,"bgImage":31,"posterImage":32,"relatedSolution":33,"intro":35,"sections":36,"ctaTitle":100,"ctaBody":101,"ctaButton":102,"ctaUrl":103,"relatedPosts":104},58,"heberger-redis-vps",{"fr":10,"en":12,"ar":13,"es":14},"hosting-redis-on-a-vps","استضافة-redis-على-خادم-vps","alojar-redis-en-un-vps","Héberger Redis sur un VPS : guide complet","Déployez Redis sur votre VPS Cloud : prérequis RAM\u002FCPU, sécurité (ACL, TLS), persistance RDB\u002FAOF, dépannage et haute disponibilité.",10,0,false,"2026-04-23T00:00:00+00:00","2026-09-08T21:59:59+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},6,"Bases de données","bases-de-donnees","bg-teal-500\u002F10 text-teal-400","database",[29],{"id":23,"name":24,"slug":25,"color":26,"icon":27},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fheberger-redis-vps-poster.svg",{"categorySlug":25,"appSlug":34},"redis-stack","Redis est le couteau suisse de la performance : cache, sessions, files de jobs, compteurs temps réel et pub\u002Fsub. L'auto-héberger sur un VPS vous donne un contrôle total de la mémoire et du réseau qui le sépare de votre app, sans payer le prix fort des offres Redis managées. Ce guide couvre le déploiement complet — de la configuration sécurité à la persistance, en passant par le dépannage des erreurs les plus fréquentes.",[37,41,51,54,79,82,88,91,94,97],{"type":38,"title":39,"body":40},"h2","Pourquoi auto-héberger Redis sur un VPS","Redis vit en mémoire : sa performance dépend directement de la RAM et de la latence réseau. Les offres managées facturent chaque Go de RAM très cher et imposent des plafonds de connexions. Sur un VPS, vous dimensionnez la RAM selon votre besoin réel, vous configurez librement `maxmemory` et la politique d'éviction (`allkeys-lru`, `volatile-ttl`...), et vous activez la persistance RDB et\u002Fou AOF selon votre tolérance à la perte de données. Pour un cache applicatif, un broker de jobs (Sidekiq, BullMQ, Celery) ou un store de sessions, un Redis collé à votre application sur le même réseau privé élimine la latence inter-datacenter et réduit drastiquement le coût.",{"type":42,"title":43,"items":44},"ul","Les bénéfices concrets d'un Redis auto-hébergé",[45,46,47,48,49,50],"Latence sub-milliseconde si Redis tourne sur le même VPS ou le même réseau privé que votre app.","Contrôle de `maxmemory` et de la politique d'éviction selon votre usage cache ou file de jobs.","Persistance au choix : RDB (snapshots), AOF (journal), ou les deux pour la durabilité.","Coût RAM sans surfacturation : vous payez le forfait VPS, pas le Go de mémoire premium.","Modules libres : RediSearch, RedisJSON, RedisBloom selon vos besoins.","Aucun plafond arbitraire sur le nombre de connexions clients simultanées.",{"type":38,"title":52,"body":53},"Prérequis matériels et logiciels","Redis étant en mémoire, c'est la RAM qui compte, pas le CPU. Pour un cache modeste ou un store de sessions, **1 vCPU et 1 à 2 Go de RAM** suffisent — Redis open source est peu gourmand en CPU car il est mono-threadé pour les commandes (les I\u002FO réseau sont asynchrones). Si Redis sert de broker pour des milliers de jobs en file ou stocke des datasets en mémoire de plusieurs Go, dimensionnez la RAM à au moins le double de votre `maxmemory` cible pour absorber la copie-sur-écriture lors des snapshots RDB : pendant un `BGSAVE`, le processus fils peut dupliquer temporairement les pages modifiées.\n\nCôté disque, prévoyez au moins 2× la taille de votre dataset si vous activez la persistance RDB ou AOF, plus de l'espace pour la rotation des logs. Côté logiciel : Ubuntu 22.04\u002F24.04 LTS, Docker et Compose v2, un volume persistant pour AOF\u002FRDB si vous activez la persistance, et le paramétrage `vm.overcommit_memory=1` sur l'hôte pour éviter les échecs de fork lors des sauvegardes. La désactivation des **Transparent Huge Pages** (`echo never > \u002Fsys\u002Fkernel\u002Fmm\u002Ftransparent_hugepage\u002Fenabled`) est également recommandée : Redis la signale explicitement au démarrage si elle est active, car elle peut provoquer des latences et une consommation mémoire anormale.",{"type":55,"title":56,"steps":57},"steps","Déployer Redis avec Docker en production",[58,61,64,67,70,73,76],{"title":59,"body":60},"Préparer l'hôte","Installez Docker, puis réglez `vm.overcommit_memory=1` via `sysctl` pour fiabiliser les snapshots, et désactivez les Transparent Huge Pages. Fermez le port 6379 vers l'extérieur : un Redis exposé sans mot de passe est une cible classique de cryptomineurs.\n\n```bash\n# Persistent via sysctl.conf\necho 'vm.overcommit_memory = 1' >> \u002Fetc\u002Fsysctl.conf\nsysctl -p\n# Désactiver THP\necho never > \u002Fsys\u002Fkernel\u002Fmm\u002Ftransparent_hugepage\u002Fenabled\n```",{"title":62,"body":63},"Écrire le docker-compose.yml","Déclarez un service `redis:7-alpine` avec une commande personnalisée pointant vers un `redis.conf` monté en lecture seule. Activez `requirepass`, définissez `maxmemory` et `maxmemory-policy`, et montez un volume pour `\u002Fdata` si vous voulez la persistance.\n\n```bash\nservices:\n  redis:\n    image: redis:7-alpine\n    command: redis-server \u002Fetc\u002Fredis\u002Fredis.conf\n    volumes:\n      - .\u002Fredis.conf:\u002Fetc\u002Fredis\u002Fredis.conf:ro\n      - redis_data:\u002Fdata\n    restart: unless-stopped\n    ports:\n      - \"127.0.0.1:6379:6379\"\nvolumes:\n  redis_data:\n```",{"title":65,"body":66},"Configurer la sécurité","Dans `redis.conf`, la sécurité repose sur plusieurs niveaux complémentaires. Le premier est le **binding réseau** : `bind 127.0.0.1` ou votre IP de réseau privé — ne jamais écouter sur `0.0.0.0` sans protection supplémentaire. Le deuxième est l'**authentification** : `requirepass VOTRE_MOT_DE_PASSE_FORT` pour Redis 6 et antérieur ; pour Redis 7, préférez les **ACL** qui permettent de créer des utilisateurs avec des permissions granulaires :\n\n```bash\nbind 127.0.0.1\nrequirepass VOTRE_MOT_DE_PASSE_FORT\n# ACL Redis 7 : utilisateur lecture seule pour votre app\naclfile \u002Fetc\u002Fredis\u002Fusers.acl\n# Désactiver les commandes dangereuses\nrename-command FLUSHALL \"\"\nrename-command CONFIG \"\"\nrename-command DEBUG \"\"\n```\n\nLe fichier `users.acl` peut déclarer :\n\n```bash\nuser app_user on >MOT_DE_PASSE ~* +@read +@write -@dangerous\nuser default off\n```\n\nPour un accès distant chiffré, activez le **TLS natif Redis** (disponible depuis Redis 6) :\n\n```bash\ntls-port 6380\ntls-cert-file \u002Fcerts\u002Fredis.crt\ntls-key-file \u002Fcerts\u002Fredis.key\ntls-ca-cert-file \u002Fcerts\u002Fca.crt\n```\n\nAlternativement, un tunnel SSH ou un VPN suffit pour la plupart des cas sans complexité TLS.",{"title":68,"body":69},"Choisir la stratégie de persistance","Redis propose deux mécanismes de persistance, combinables selon vos besoins.\n\n**RDB (snapshot)** : Redis écrit un instantané du dataset sur disque à intervalles configurables. Rapide au redémarrage, mais vous perdez les données écrites depuis le dernier snapshot en cas de crash.\n\n```bash\n# Snapshot si 1 clé change en 900 s, 10 clés en 300 s, 10000 clés en 60 s\nsave 900 1\nsave 300 10\nsave 60 10000\n```\n\n**AOF (Append-Only File)** : chaque commande d'écriture est journalisée. Plus sûr, légèrement plus lent. `appendfsync everysec` est le bon compromis : au pire 1 seconde de données perdues.\n\n```bash\nappendonly yes\nappendfsync everysec\nauto-aof-rewrite-percentage 100\nauto-aof-rewrite-min-size 64mb\n```\n\n**Combinaison RDB + AOF** : au redémarrage, Redis utilise l'AOF (plus complet), et le RDB accélère les sauvegardes complètes périodiques. C'est la stratégie recommandée pour les brokers de jobs critiques.\n\nPour un **pur cache** où la perte de données est acceptable, désactivez la persistance : `save \"\"` et `appendonly no` — vous gagnez en performance et en espace disque.",{"title":71,"body":72},"Connecter votre application","Lancez avec `docker compose up -d` et testez avec `docker compose exec redis redis-cli -a VOTRE_PASS ping`. Faites pointer votre application vers le réseau Docker interne plutôt que vers une IP publique, pour la latence et la sécurité.\n\n```bash\n# Test de connectivité\ndocker compose exec redis redis-cli -a VOTRE_PASS ping\n# PONG\n\n# Vérifier la configuration active\ndocker compose exec redis redis-cli -a VOTRE_PASS CONFIG GET maxmemory\n```\n\nPour les applications sur le même hôte Docker, utilisez le nom du service comme hôte (`redis:6379`) plutôt que `localhost` ou l'IP publique.",{"title":74,"body":75},"Surveiller la mémoire","Surveillez `used_memory` et `evicted_keys` via `redis-cli INFO`. Si les évictions montent, augmentez la RAM ou affinez la politique. Configurez une alerte quand l'utilisation mémoire dépasse 80% de `maxmemory`.\n\n```bash\n# Vue d'ensemble santé Redis\nredis-cli -a VOTRE_PASS INFO memory | grep -E 'used_memory_human|maxmemory_human|mem_fragmentation_ratio'\nredis-cli -a VOTRE_PASS INFO stats | grep -E 'evicted_keys|keyspace_hits|keyspace_misses'\n```\n\nUn `mem_fragmentation_ratio` supérieur à 1,5 indique une fragmentation significative : un `MEMORY PURGE` ou un redémarrage progressif peut être utile.",{"title":77,"body":78},"Se connecter la première fois","Ouvrez l'URL : RedisInsight s'affiche directement, SANS aucune demande d'identifiant (vous acceptez seulement les conditions d'utilisation au premier écran), et votre base Redis locale y est déjà accessible en lecture\u002Fécriture. N'attachez pas de domaine public à cette interface sans protection en amont.",{"type":38,"title":80,"body":81},"Dépannage : les erreurs les plus fréquentes","Voici les erreurs que vous rencontrerez le plus souvent lors de l'exploitation de Redis sur VPS, avec leur cause et leur remède.",{"type":42,"title":5,"items":83},[84,85,86,87],"**`MISCONF Redis is configured to save RDB snapshots, but it's currently unable to persist on disk`** — Redis tente un snapshot mais le fork échoue. Cause : `vm.overcommit_memory` est à 0 sur l'hôte. Correction : `sysctl vm.overcommit_memory=1` (permanent dans `\u002Fetc\u002Fsysctl.conf`). Si vous utilisez Docker, ce paramètre doit être posé sur l'**hôte Docker**, pas dans le conteneur.","**`ERR max number of clients reached`** — Le nombre de connexions simultanées dépasse `maxclients` (défaut : 10 000). Causes fréquentes : pool de connexions mal configuré côté application (Sidekiq, Laravel Horizon, etc.) ou connexions non fermées. Correction : augmentez `maxclients` dans `redis.conf` et vérifiez la configuration du pool côté app. La commande `redis-cli CLIENT LIST` liste les connexions actives.","**OOM Killer tue le processus Redis** — Le noyau Linux tue Redis faute de mémoire libre. Cause : `maxmemory` non défini ou trop généreux, couplé à la copie-sur-écriture du fork RDB. Correction : fixez `maxmemory` à 60-70 % de la RAM disponible, choisissez une politique d'éviction (`maxmemory-policy allkeys-lru` pour un cache, `noeviction` pour un broker), et prévoyez 2× le dataset pour le fork RDB. Surveillez `\u002Fvar\u002Flog\u002Fsyslog` pour les messages `Out of memory: Kill process`.","**`Could not create server TCP listening socket 0.0.0.0:6379: bind: Address already in use`** — Un autre processus occupe le port 6379. Identifiez-le avec `ss -tlnp | grep 6379` et arrêtez-le, ou changez le port Redis dans votre configuration. Sur les VPS avec une instance Redis installée via `apt`, le service système peut conflicuer avec votre conteneur Docker.",{"type":38,"title":89,"body":90},"Haute disponibilité : Sentinel et Cluster","Pour les workloads critiques où une indisponibilité de Redis est inacceptable, deux solutions existent.\n\n**Redis Sentinel** est la solution de haute disponibilité pour une architecture maître\u002Frépliques. Déployez trois nœuds Sentinel sur trois VPS distincts : Sentinel surveille le maître, détecte sa défaillance, et promeut automatiquement un réplique. Vos applications se connectent via le service Sentinel plutôt que directement au maître — elles sont transparentes au basculement. Sentinel convient pour la plupart des cas : cache, sessions, brokers de jobs avec durabilité.\n\n**Redis Cluster** partitionne les données sur plusieurs nœuds (sharding horizontal) et offre une haute disponibilité intégrée. Il exige au minimum 6 nœuds (3 maîtres + 3 répliques) et une adaptation de votre client. À réserver aux datasets dépassant la RAM d'un seul serveur ou aux workloads nécessitant un débit d'écriture très élevé.\n\nPour la grande majorité des usages sur VPS, **Sentinel sur 3 nœuds** est la bonne réponse : plus simple à opérer, compatible avec tous les clients Redis standards, et suffisant pour des datasets de quelques dizaines de Go.",{"type":38,"title":92,"body":93},"Mises à jour et alternative Valkey","**Sur les versions.** Redis 7.4 est la branche stable LTS en cours (7.4.11 au moment de la rédaction). Redis 8 est la dernière version majeure GA, publiée en mai 2025, qui a également marqué l'adoption de l'AGPLv3 comme troisième option de licence — aux côtés du RSALv2 et du SSPLv1 adoptés en mars 2024. Pour une migration de Redis 7.x vers Redis 8, consultez les release notes officielles : des changements de comportement sur la gestion mémoire et les ACL sont à anticiper.\n\n**Sur la licence.** En mars 2024, Redis Ltd. a abandonné la licence BSD 3-Clause pour une double licence RSALv2 + SSPLv1 (non approuvée OSI). En réponse, la Linux Foundation a créé **Valkey** le 28 mars 2024 — un fork de Redis 7.2.4 sous licence BSD 3-Clause, soutenu par AWS, Google Cloud, Oracle et d'autres membres fondateurs. Valkey suit une trajectoire de développement indépendante et publie ses propres releases. Si votre usage implique de la redistribution ou des restrictions de licence, ou si vous souhaitez un fork 100 % open source au sens OSI, Valkey est une alternative directe : les APIs et protocoles sont compatibles, et la migration est généralement transparente. Un article dédié compare les deux projets en détail : \u003Ca href=\"\u002Fblog\u002Fvalkey-vs-redis-migration-2026\">Valkey vs Redis en 2026 : faut-il migrer ?\u003C\u002Fa>\n\nPour les usages privés courants (cache d'application, broker de jobs, store de sessions sur votre propre infrastructure), Redis 7.x ou 8 reste pleinement utilisable sans friction de licence.",{"type":95,"body":96},"tip","Surveillez le ratio `keyspace_hits` \u002F `keyspace_misses` via `INFO stats` : un taux de hit faible signifie que votre cache est mal dimensionné ou que vos TTL sont trop courts. Pour les workloads critiques, déployez Redis Sentinel sur trois VPS afin d'obtenir un failover automatique : si le maître tombe, un esclave est promu sans intervention, et vos applications sont redirigées via le service Sentinel.",{"type":95,"title":98,"body":99},"La documentation officielle","Pour la configuration avancée et les options propres à l'outil, référez-vous à la \u003Ca href=\"https:\u002F\u002Fredis.io\u002Fdocs\" target=\"_blank\" rel=\"noopener noreferrer\">documentation officielle de Redis\u003C\u002Fa>. Ce guide couvre la mise en ligne sur VPS ; la doc éditeur reste la référence pour les réglages fins, les mises à jour majeures et les cas d'usage spécifiques.","Faites tourner Redis à pleine vitesse","Le VPS Cloud ServOrbit avec template Docker et RAM dédiée vous donne la latence et la mémoire nécessaires pour un Redis performant, cache ou broker de jobs.","Déployer mon VPS Cloud","\u002Fvps-cloud",[105,124,141],{"id":106,"slug":107,"slugs":108,"title":112,"excerpt":113,"readTime":114,"views":115,"isPinned":19,"noindex":19,"publishedAt":116,"updatedAt":117,"category":118,"categories":119,"featuredImage":30,"bgImage":31,"posterImage":121,"relatedSolution":122},56,"heberger-postgresql-vps",{"fr":107,"en":109,"ar":110,"es":111},"postgresql-on-a-vps-a-reliable-and-controlled-database","postgresql-على-خادم-vps-قاعدة-بيانات-موثوقة-ومتحكم-بها","alojar-postgresql-en-un-vps","PostgreSQL sur VPS : base fiable et contrôlée","Hébergez PostgreSQL sur VPS : configuration prod, sauvegardes pgBackRest, haute disponibilité streaming, comparatif RDS\u002FSupabase\u002FNeon et dépannage OOM.",9,1,"2026-04-25T00:00:00+00:00","2026-10-21T15:21:37+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[120],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-postgresql-vps-poster.svg",{"categorySlug":25,"appSlug":123},"postgresql-stack",{"id":125,"slug":126,"slugs":127,"title":131,"excerpt":132,"readTime":114,"views":18,"isPinned":19,"noindex":19,"publishedAt":133,"updatedAt":134,"category":135,"categories":136,"featuredImage":30,"bgImage":31,"posterImage":138,"relatedSolution":139},57,"heberger-mysql-vps",{"fr":126,"en":128,"ar":129,"es":130},"hosting-mysql-on-a-vps","استضافة-mysql-على-خادم-vps","alojar-mysql-en-un-vps","Héberger MySQL sur un VPS : guide complet","Installez MySQL 8.4 LTS sur un VPS : prérequis, sécurisation, performances InnoDB, accès distant sécurisé, sauvegardes automatisées et dépannage.","2026-04-24T00:00:00+00:00","2026-11-09T20:55:18+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[137],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-mysql-vps-poster.svg",{"categorySlug":25,"appSlug":140},"mysql-stack",{"id":142,"slug":143,"slugs":144,"title":148,"excerpt":149,"readTime":150,"views":18,"isPinned":19,"noindex":19,"publishedAt":151,"updatedAt":152,"category":153,"categories":154,"featuredImage":30,"bgImage":31,"posterImage":156,"relatedSolution":30},59,"heberger-mongodb-vps",{"fr":143,"en":145,"ar":146,"es":147},"hosting-mongodb-on-a-vps","استضافة-mongodb-على-خادم-vps","alojar-mongodb-en-un-vps","Héberger MongoDB sur un VPS","Hébergez MongoDB sur votre VPS Cloud : déploiement Docker, replica set, authentification, indexation et sauvegardes maîtrisées.",3,"2026-04-22T00:00:00+00:00","2026-09-08T22:00:02+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[155],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-mongodb-vps-poster.svg",true,1794270730889]