{"id":20108,"date":"2026-07-28T18:21:28","date_gmt":"2026-07-28T16:21:28","guid":{"rendered":"https:\/\/webhosting.de\/redis-cluster-vs-standalone-im-webhosting-redis-hosting\/"},"modified":"2026-07-28T18:21:28","modified_gmt":"2026-07-28T16:21:28","slug":"redis-en-cluster-ou-en-mode-autonome-dans-lhebergement-web-redis","status":"publish","type":"post","link":"https:\/\/webhosting.de\/fr\/redis-cluster-vs-standalone-im-webhosting-redis-hosting\/","title":{"rendered":"Redis Cluster ou version autonome : la strat\u00e9gie d'h\u00e9bergement Redis optimale dans le cadre de l'h\u00e9bergement web"},"content":{"rendered":"<p>Je vais vous montrer quand un <strong>cluster Redis<\/strong> quelle est la meilleure approche en mati\u00e8re d'h\u00e9bergement web et dans quels cas une seule instance suffit pour garantir le fonctionnement fiable de la mise en cache, des sessions et du mod\u00e8le Pub\/Sub sous une charge \u00e9lev\u00e9e. Je vous explique en d\u00e9tail quelle architecture s'adapte \u00e0 quelle \u00e9chelle, comment garantir la disponibilit\u00e9 et quelle solution d'h\u00e9bergement offre les meilleures performances \u00e0 un co\u00fbt raisonnable \u2013 sans surcharges inutiles pour l'exploitation quotidienne.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/07\/redis-hosting-strategie-4791.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Points centraux<\/h2>\n\n<ul>\n  <li><strong>Mise \u00e0 l'\u00e9chelle<\/strong>: La version autonome \u00e9volue verticalement, <strong>Cluster<\/strong> horizontalement sur plusieurs n\u0153uds.<\/li>\n  <li><strong>Disponibilit\u00e9<\/strong>: R\u00e9pliques et <strong>Basculement<\/strong> permettent de pallier les pannes au sein du cluster.<\/li>\n  <li><strong>Performance<\/strong>: Le mode autonome brille par n\u0153ud, <strong>Cluster<\/strong> augmente le d\u00e9bit global.<\/li>\n  <li><strong>Charges<\/strong>: \u00ab Standalone \u00bb signifie <strong>simplement<\/strong>, le cluster n\u00e9cessite une conception rigoureuse des cl\u00e9s.<\/li>\n  <li><strong>H\u00e9bergement<\/strong>: D\u00e9di\u00e9s <strong>Ressources<\/strong> offrent des latences pr\u00e9visibles.<\/li>\n<\/ul>\n\n<h2>Redis dans l'h\u00e9bergement web : explication succincte<\/h2>\n\n<p>J'utilise Redis lorsque les requ\u00eates n\u00e9cessitent des r\u00e9ponses rapides et que les donn\u00e9es doivent \u00eatre conserv\u00e9es en m\u00e9moire plut\u00f4t que d'attendre un disque plus lent, car cela r\u00e9duit les latences et soulage la base de donn\u00e9es en diminuant le nombre de lectures et d'\u00e9critures pour une <strong>sensible<\/strong> Acc\u00e9l\u00e9ration. Les domaines d'application typiques sont la mise en cache pour WordPress, les sessions sur plusieurs workers PHP-FPM ou Node, la mise en cache de pages enti\u00e8res pour les pages tr\u00e8s fr\u00e9quent\u00e9es, le mod\u00e8le Pub\/Sub pour les microservices et les m\u00e9triques en temps r\u00e9el avec des KPI clairs lors de l'analyse, ce qui <strong>Temps de r\u00e9ponse<\/strong> ce qui se ressent nettement au niveau du front-end. Pour WordPress, j'utilise souvent un cache d'objets afin que les requ\u00eates lourdes soient trait\u00e9es \u00e0 partir de la m\u00e9moire vive et que la charge CPU du serveur de base de donn\u00e9es diminue, ce qui am\u00e9liore la <strong>\u00c9volutivit\u00e9<\/strong> nettement am\u00e9lior\u00e9e au quotidien. Ceux qui souhaitent en savoir plus sur les principes de base trouveront des conseils concis dans les <a href=\"https:\/\/webhosting.de\/fr\/object-cache-base-de-donnees-optimisation-avantages-redis-cacheboost\/\">Avantages du cache d'objets<\/a>, que j'utilise volontiers comme point de d\u00e9part dans la pratique, avant de les affiner. Le choix du mode de fonctionnement reste d\u00e9terminant, car c'est l'architecture qui d\u00e9finit la quantit\u00e9 de m\u00e9moire et le d\u00e9bit disponibles, ainsi que <strong>\u00e0 s\u00e9curit\u00e9 int\u00e9gr\u00e9e<\/strong> la configuration r\u00e9agit en cas de pics de charge.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/07\/redis-strategie-3245.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Redis Standalone : atouts et limites<\/h2>\n\n<p>J'utilise la version autonome lorsque la simplicit\u00e9 prime et que le volume de donn\u00e9es tient facilement dans la m\u00e9moire vive d'un h\u00f4te, car un seul processus traite alors chaque requ\u00eate sans surcharge li\u00e9e au routage, ce qui permet ainsi de <strong>Latence<\/strong> reste minime. L'administration est simple : d\u00e9marrage, mot de passe, persistance \u2013 c'est tout \u2013 et pour les sites de petite \u00e0 moyenne taille, cela offre d'excellents temps de r\u00e9ponse avec un tr\u00e8s <strong>plus faible<\/strong> Variabilit\u00e9. Les limites apparaissent lorsque les sessions, les caches et les files d'attente s'accumulent et qu'un h\u00f4te seul ne fournit plus suffisamment de m\u00e9moire ou d'IOPS, ce qui r\u00e9duit la marge de man\u0153uvre en cas de pics de charge. En cas de panne du serveur, l\u2019instance n\u2019est tout simplement pas disponible sans r\u00e9plication ; c\u2019est pourquoi, pour les sc\u00e9narios critiques, je pr\u00e9vois au minimum une r\u00e9plication associ\u00e9e \u00e0 Sentinel, afin de garantir une <strong>Basculement<\/strong> reste possible. Si un n\u0153ud s'av\u00e8re insuffisant \u00e0 court terme ou si l'activit\u00e9 impose des objectifs P95\/P99 stricts, j'oriente la planification vers un cluster afin de garantir davantage de r\u00e9serves et un d\u00e9bit v\u00e9ritablement horizontal, et de <strong>Capacit\u00e9<\/strong> \u00e0 \u00e9tendre de mani\u00e8re modulaire.<\/p>\n\n<h2>Redis Cluster : \u00e9volutivit\u00e9 et fiabilit\u00e9<\/h2>\n\n<p>Je mise sur les clusters d\u00e8s que le volume de donn\u00e9es et de requ\u00eates d\u00e9passe la capacit\u00e9 d'un seul serveur, car les instances sont r\u00e9parties par \u00ab hash-slots \u00bb et r\u00e9partissent ainsi la m\u00e9moire et le QPS entre plusieurs instances primaires, ce qui <strong>Performance<\/strong> augmente \u00e0 chaque n\u0153ud. La disponibilit\u00e9 est assur\u00e9e par des r\u00e9pliques par shard, qui prennent automatiquement le relais en cas de d\u00e9faillance d'un n\u0153ud primaire, ce qui permet aux services de rester accessibles malgr\u00e9 une panne et <strong>Temps d'arr\u00eat<\/strong> soit bri\u00e8vement interrompu. Il est important de disposer d'un client compatible avec le clustering, capable de traiter correctement les redirections (MOVED\/ASK) et d'utiliser efficacement les pools de connexions par slot, afin que l'application ne soit pas ralentie. En production, je veille \u00e0 la taille des shards, \u00e0 une r\u00e9partition homog\u00e8ne et aux sauvegardes par n\u0153ud, afin que le r\u00e9\u00e9quilibrage et la croissance se d\u00e9roulent sans heurts et que la <strong>Latence<\/strong> restent stables. Ceux qui recourent intensivement aux op\u00e9rations multi-cl\u00e9s con\u00e7oivent des cl\u00e9s avec des hachages afin que les donn\u00e9es associ\u00e9es soient stock\u00e9es sur le m\u00eame shard et que les commandes s'ex\u00e9cutent sans erreur de cross-slot, ce qui <strong>Consistance<\/strong> des charges de travail.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/07\/redis-hosting-strategy-comparison-4821.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Performances : n\u0153ud unique vs d\u00e9bit global<\/h2>\n\n<p>Je fais une distinction claire entre les performances d'un processus individuel et le d\u00e9bit global de plusieurs n\u0153uds, car le routage et le \u00ab gossip \u00bb dans le cluster g\u00e9n\u00e8rent une l\u00e9g\u00e8re surcharge par n\u0153ud, tandis que le syst\u00e8me dans son ensemble est nettement <strong>plus<\/strong> Traitement des requ\u00eates. Le mode autonome semble extr\u00eamement rapide tant que la charge et les besoins en m\u00e9moire sont adapt\u00e9s \u00e0 l'h\u00f4te, car chaque commande est trait\u00e9e localement, ce qui \u00e9vite les sauts de r\u00e9seau, ce qui <strong>Temps de r\u00e9action<\/strong> r\u00e9duit. Au sein du cluster, le nombre total d'op\u00e9rations augmente avec le nombre de primaires, \u00e0 condition que l'application r\u00e9partisse les requ\u00eates de mani\u00e8re uniforme et que les pics d'\u00e9criture ne se concentrent pas sur un point sensible. Je tiens \u00e9galement compte des co\u00fbts de fork li\u00e9s \u00e0 la persistance : la charge est plus faible par shard, ce qui lisse les pics et \u00e9vite les blocages que les utilisateurs ressentiraient sinon imm\u00e9diatement, ce qui <strong>Utilisateur<\/strong>- L'exp\u00e9rience en p\u00e2tit. Le tableau suivant m'aide \u00e0 prendre des d\u00e9cisions fond\u00e9es sur des faits, sans avoir \u00e0 pr\u00e9voir par la suite des travaux de transformation co\u00fbteux qui <strong>Temps<\/strong> et le budget.<\/p>\n\n<table>\n  <thead>\n    <tr>\n      <th>Crit\u00e8re<\/th>\n      <th>Redis autonome<\/th>\n      <th>Cluster Redis<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td>Mise \u00e0 l'\u00e9chelle<\/td>\n      <td>Verticalement, limit\u00e9 par la m\u00e9moire vive (RAM) et le processeur (CPU) de l'h\u00f4te<\/td>\n      <td>\u00c0 l'horizontale sur plusieurs instances principales (sharding)<\/td>\n    <\/tr>\n    <tr>\n      <td>Disponibilit\u00e9<\/td>\n      <td>En option avec r\u00e9plication\/Sentinel<\/td>\n      <td>Basculement automatique par shard avec r\u00e9pliques<\/td>\n    <\/tr>\n    <tr>\n      <td>Performance<\/td>\n      <td>D\u00e9bit tr\u00e8s \u00e9lev\u00e9 par n\u0153ud<\/td>\n      <td>D\u00e9bit par n\u0153ud l\u00e9g\u00e8rement inf\u00e9rieur, d\u00e9bit global plus \u00e9lev\u00e9<\/td>\n    <\/tr>\n    <tr>\n      <td>Administration<\/td>\n      <td>Fonctionnement simple, peu de pi\u00e8ces mobiles<\/td>\n      <td>Plus de composants, r\u00e9\u00e9quilibrage et gestion des emplacements<\/td>\n    <\/tr>\n    <tr>\n      <td>Conception des touches<\/td>\n      <td>Sans esprit critique<\/td>\n      <td>Les hashtags sont avantageux pour les charges de travail multi-cl\u00e9s<\/td>\n    <\/tr>\n    <tr>\n      <td>Croissance<\/td>\n      <td>\u00c9volutivit\u00e9 verticale progressive, interruptions de service possibles<\/td>\n      <td>Ajouter des n\u0153uds, r\u00e9partir les donn\u00e9es, le plus souvent sans interruption<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n\n<h2>Guide d'aide \u00e0 la d\u00e9cision pour les \u00e9quipes d'h\u00e9bergement<\/h2>\n\n<p>Je commence par le mode autonome lorsque le jeu de donn\u00e9es tient facilement dans la m\u00e9moire vive, que la charge reste mod\u00e9r\u00e9e et que les op\u00e9rations multi-cl\u00e9s ainsi que les scripts Lua sont fr\u00e9quents, car dans ce cas, la simplicit\u00e9 et les performances \u00e9lev\u00e9es sur un seul n\u0153ud priment, et la <strong>Administration<\/strong> reste all\u00e9g\u00e9e. Si le volume de donn\u00e9es ou les pics de charge augmentent, le passage \u00e0 un cluster constitue l'\u00e9tape logique, car l'\u00e9volutivit\u00e9 horizontale am\u00e9liore le d\u00e9bit et cr\u00e9e des r\u00e9serves pour les campagnes et les mises en production, ce qui <strong>Trafic<\/strong>- pour garantir le bon d\u00e9roulement des op\u00e9rations. Pour les objectifs P95\/P99, je pr\u00e9vois d\u00e8s le d\u00e9part des r\u00e9pliques et un syst\u00e8me de surveillance, que ce soit en mode autonome ou en cluster, car des sc\u00e9narios d'erreur surviennent toujours et je ne veux pas prendre le risque de mauvaises surprises lors du checkout. Je v\u00e9rifie \u00e9galement si plusieurs projets partagent des ressources, car des voisins bruyants font grimper les latences et compliquent le d\u00e9bogage ; c\u2019est pourquoi une s\u00e9paration claire est tr\u00e8s <strong>Valeur<\/strong> fournit. Pour ceux qui g\u00e8rent de nombreux clients, un cluster s'av\u00e8re souvent plus \u00e9conomique, car il permet d'\u00e9tendre la capacit\u00e9 de mani\u00e8re modulaire, sans changement d'architecture et avec des co\u00fbts pr\u00e9visibles <strong>Performance<\/strong>.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/07\/RedisHostingStrategie2345.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Adapter correctement le mod\u00e8le de donn\u00e9es, le TTL et les \u00e9victions<\/h2>\n\n<p>Je choisis le mod\u00e8le de donn\u00e9es de mani\u00e8re \u00e0 optimiser l'utilisation de la m\u00e9moire et du processeur : je place de pr\u00e9f\u00e9rence les petits objets fr\u00e9quemment consult\u00e9s dans <strong>Hashs<\/strong>, car Redis stocke les champs de mani\u00e8re compacte en interne et je peux r\u00e9cup\u00e9rer plusieurs attributs d'un seul coup. Je d\u00e9compose les structures volumineuses et rarement consult\u00e9es afin que les attributs \u00ab chauds \u00bb ne soient pas alourdis par la charge utile. <strong>Grandes touches<\/strong> (par exemple, les listes ou ensembles volumineux), que j'\u00e9vite car ils allongent les op\u00e9rations d'\u00e9viction et de suppression et provoquent des pics de latence. Pour les caches, j'attribue syst\u00e9matiquement <strong>TTLs<\/strong> et saupoudre une quantit\u00e9 al\u00e9atoire de <strong>Jitter<\/strong>-composante (par exemple \u00b110 %), afin d'\u00e9viter les pics d'expiration lorsque de nombreuses entr\u00e9es expirent simultan\u00e9ment.<\/p>\n\n<p>Le <strong>maxmemory-policy<\/strong> Je m'appuie sur le cas d'utilisation : pour les caches purement volatils, j'utilise g\u00e9n\u00e9ralement allkeys-lru\/lfu ; pour les ensembles de donn\u00e9es partiellement persistants, les politiques \u00ab volatile \u00bb sont utiles, car elles permettent de ne remplacer que les cl\u00e9s dot\u00e9es d'un TTL. Important : les \u00e9victions ne constituent pas un m\u00e9canisme de contr\u00f4le habituel, mais un frein de secours \u2013 je pr\u00e9vois donc toujours avec <strong>marge<\/strong> et je surveille le taux de r\u00e9ussite. La fragmentation et la surcharge (gestion des cl\u00e9s et des pointeurs) s'accumulent rapidement ; dans la pratique, je table grossi\u00e8rement sur une surco\u00fbt de 30 \u00e0 50 % par rapport \u00e0 la m\u00e9moire \u00ab value \u00bb pure, puis j'ajuste ce chiffre apr\u00e8s avoir effectu\u00e9 des mesures avec la commande INFO memory.<\/p>\n\n<h2>Mod\u00e8les et anti-mod\u00e8les de client<\/h2>\n\n<p>Du c\u00f4t\u00e9 client, je garantis l'efficacit\u00e9 gr\u00e2ce \u00e0 <strong>Pooling de connexions<\/strong>, r\u00e9alistes <strong>Timeouts<\/strong> et <strong>pipeline<\/strong> . Je regroupe de nombreuses petites op\u00e9rations GET\/SET afin d'\u00e9conomiser des allers-retours ; je n'utilise les transactions (MULTI\/EXEC) que lorsque l'atomicit\u00e9 est r\u00e9ellement n\u00e9cessaire. Dans les configurations en cluster, je veille \u00e0 disposer de pools par slot\/n\u0153ud et \u00e0 une gestion rigoureuse des redirections MOVED\/ASK. J'effectue les tentatives de r\u00e9essai avec <strong>Backoff<\/strong> et des limites maximales, sinon elles aggravent les embouteillages. Les commandes KEYS, FLUSHALL et BLOCKING sur des instances partag\u00e9es sont \u00e0 proscrire ; \u00e0 la place, j\u2019utilise des variantes de SCAN hors chemin (par exemple dans des t\u00e2ches de maintenance) et je con\u00e7ois des index de mani\u00e8re \u00e0 ne pas avoir \u00e0 effectuer de recherche en largeur.<\/p>\n\n<p>Pour les sessions, je d\u00e9finis des TTL courts mais robustes, je ne les renouvelle qu'en cas d'activit\u00e9 r\u00e9elle et je ne stocke pas de donn\u00e9es superflues (par exemple, de gros blocs JSON). Cela me permet de r\u00e9duire la bande passante, l'espace de stockage et la pression sur le GC dans l'application \u2013 et de maintenir la <strong>Latence<\/strong> ma\u00eetriser les \u00ab hot paths \u00bb.<\/p>\n\n<h2>Files d'attente, Pub\/Sub et flux<\/h2>\n\n<p>Pub\/Sub, c'est <strong>l\u00e9ger<\/strong>, mais peu fiable (pas de persistance, pas de garantie de livraison). Pour les files d'attente de t\u00e2ches et les \u00e9v\u00e9nements en retard, j'utilise <strong>flux<\/strong> Avec les groupes de consommateurs : cela me permet d'assurer un traitement \u00ab au moins une fois \u00bb, de r\u00e9partir la charge et de r\u00e9sorber les retards de mani\u00e8re contr\u00f4l\u00e9e. J'utilise XTRIM (de mani\u00e8re approximative, dans l'id\u00e9al) pour plafonner la consommation de m\u00e9moire, et je surveille les entr\u00e9es en attente afin de d\u00e9tecter les blocages. Dans les environnements en cluster, je regroupe les groupes par th\u00e8me au niveau de chaque shard (conception des cl\u00e9s !), afin que les consommateurs restent locaux et qu\u2019aucun pi\u00e8ge \u00ab cross-slot \u00bb ne se pr\u00e9sente.<\/p>\n\n<p>Dans les cas de haut d\u00e9bit, je s\u00e9pare strictement les charges de travail en flux des caches LRU, afin qu'une ingestion importante n'alt\u00e8re pas le comportement du cache. Pour les chemins sensibles, je pr\u00e9vois <strong>Pression de retour<\/strong> dans l'application, au lieu d'inonder Redis de files d'attente infinies \u2013 cela permet de garder le syst\u00e8me sous contr\u00f4le.<\/p>\n\n<h2>Les pi\u00e8ges de la latence au quotidien<\/h2>\n\n<p>J'ai trois classiques en vue : <strong>Co\u00fbts li\u00e9s au fork<\/strong> pour RDB\/AOF, <strong>Temp\u00eates d'expiration<\/strong> et <strong>Raccourcis clavier<\/strong>. Je pr\u00e9vois les forks avec une r\u00e9serve de RAM suffisante (Copy-on-Write) et des cr\u00e9neaux horaires adapt\u00e9s ; sur les tr\u00e8s petits serveurs, j'utilise moins souvent RDB ou je reporte les r\u00e9\u00e9critures AOF afin que le chemin principal ne soit pas ralenti. Pour lutter contre les pics d\u2019expiration, j\u2019utilise le jitter TTL, des t\u00e2ches de pr\u00e9chauffage \u00e9chelonn\u00e9es et des disjoncteurs (circuit breakers) dans l\u2019application, qui \u00e9vitent que tous les requ\u00eates n\u2019inondent simultan\u00e9ment la base de donn\u00e9es en cas d\u2019\u00e9chec de mise en cache. Je d\u00e9samorce les \u00ab hot keys \u00bb gr\u00e2ce \u00e0 une conception de cl\u00e9s adapt\u00e9e au sharding, \u00e0 des caches locaux c\u00f4t\u00e9 client (TTL court) ou \u00e0 une protection contre l\u2019amplification d\u2019\u00e9criture (par exemple, une limitation de d\u00e9bit d\u00e9di\u00e9e par cl\u00e9).<\/p>\n\n<p>De plus, je v\u00e9rifie r\u00e9guli\u00e8rement <strong>slowlog<\/strong> et la surveillance de la latence de Redis, afin de d\u00e9tecter rapidement les commandes aberrantes et les blocages (par exemple, des DEL ou SORT volumineux). C\u00f4t\u00e9 r\u00e9seau, des RTT faibles, le keepalive TCP et la d\u00e9sactivation de Nagle (TCP_NODELAY) c\u00f4t\u00e9 client garantissent des temps de r\u00e9ponse stables m\u00eame sous charge.<\/p>\n\n<h2>Dimensionnement, co\u00fbts et planification des capacit\u00e9s<\/h2>\n\n<p>Je commence par d\u00e9finir des hypoth\u00e8ses de charge r\u00e9alistes : QPS, r\u00e9partition lecture\/\u00e9criture, taille moyenne des objets, taux de r\u00e9ussite cible et P95\/P99. \u00c0 partir de l\u00e0, je d\u00e9termine les besoins en RAM (ensemble de donn\u00e9es plus 30 \u00e0 50 % de surco\u00fbt %), le facteur de r\u00e9plication (\u00d72\/\u00d73) et la marge de persistance. Dans les clusters, je fais \u00e9voluer <strong>Tailles des shards<\/strong> de mani\u00e8re \u00e0 ce que les \u00ab forks \u00bb et les \u00ab rewrites \u00bb s'inscrivent dans le budget d'E\/S et que l'application puisse exploiter suffisamment de parall\u00e9lisme. Des n\u0153uds trop volumineux permettent certes de r\u00e9duire la charge administrative, mais augmentent le risque de ralentissements perceptibles ; des n\u0153uds trop petits alourdissent la gestion et le trafic inter-n\u0153uds. En g\u00e9n\u00e9ral, j\u2019obtiens de meilleurs r\u00e9sultats avec des shards de taille moyenne et une strat\u00e9gie de croissance claire (ajouter des n\u0153uds, tester le r\u00e9\u00e9quilibrage).<\/p>\n\n<p>En termes de co\u00fbts, la persistance a un impact important : des synchronisations AOF fr\u00e9quentes renforcent la s\u00e9curit\u00e9 des donn\u00e9es, mais sollicitent fortement les IOPS des SSD et le processeur. Pour les caches purs, je r\u00e9duis la persistance ou je la d\u00e9sactive d\u00e9lib\u00e9r\u00e9ment afin de <strong>Budget<\/strong> et de maintenir la latence \u00e0 un niveau stable ; pour les sessions et les donn\u00e9es d'\u00e9tat critiques, j'opte pour des param\u00e8tres plus prudents. Je pr\u00e9vois \u00e9galement <strong>Suppl\u00e9ments d'isolation<\/strong>: Les ressources d\u00e9di\u00e9es repr\u00e9sentent un co\u00fbt initial plus \u00e9lev\u00e9, mais permettent de r\u00e9duire les co\u00fbts li\u00e9s au d\u00e9bogage et aux pannes ; au final, elles s'av\u00e8rent souvent plus \u00e9conomiques.<\/p>\n\n<h2>Strat\u00e9gie de mise \u00e0 niveau et de maintenance<\/h2>\n\n<p>Je passe \u00e0 la version sup\u00e9rieure dans <strong>Vagues<\/strong>: D'abord un test\/une phase de pr\u00e9production avec les donn\u00e9es de production (anonymis\u00e9es), puis des mises \u00e0 jour progressives par n\u0153ud ou par shard. Je veille \u00e0 ce que les phases interm\u00e9diaires comportant des versions mixtes soient aussi courtes que possible et je tiens compte des notes de compatibilit\u00e9 (modifications de commandes, valeurs par d\u00e9faut, encodages). Je g\u00e8re les versions des modifications de configuration et je documente leur impact sur la latence et l'espace de stockage, mesur\u00e9 avant et apr\u00e8s la modification. Dans les clusters, je pr\u00e9vois des <strong>Exercices de resharding<\/strong> en dehors des p\u00e9riodes de pointe, afin que l'\u00e9quipe int\u00e9riorise les proc\u00e9dures et que le basculement et la restauration des clients soient parfaitement ma\u00eetris\u00e9s. Les proc\u00e9dures de retour en arri\u00e8re (rollback) en font partie, y compris les sauvegardes qui peuvent r\u00e9ellement \u00eatre restaur\u00e9es.<\/p>\n\n<h2>Approfondissement sur la s\u00e9curit\u00e9 : listes de contr\u00f4le d'acc\u00e8s (ACL) et mandants<\/h2>\n\n<p>Outre Auth et TLS, j'utilise <strong>ACLs<\/strong>, afin de ne valider que les commandes et les espaces de cl\u00e9s n\u00e9cessaires \u00e0 chaque application. Je bloque ou renomme les commandes dangereuses (FLUSHALL, CONFIG SET) ; je s\u00e9pare strictement les comptes administrateurs des comptes d'application. Dans les environnements multi-locataires, j'utilise des pr\u00e9fixes tels que <strong>Espaces de nommage<\/strong> , limite les commandes par r\u00f4le et v\u00e9rifie r\u00e9guli\u00e8rement que les quotas et les expulsions n'ont pas d'incidence sur un client particulier au d\u00e9triment de ses voisins. Je conserve les r\u00e9pliques en lecture seule et, lorsqu'elles sont expos\u00e9es \u00e0 l'ext\u00e9rieur, je les isole en outre \u00e0 l'aide d'un pare-feu et de limites de d\u00e9bit, afin d'\u00e9viter que des abus ne se traduisent par un vol de donn\u00e9es.<\/p>\n\n<h2>Exploitation : persistance, surveillance, s\u00e9curit\u00e9<\/h2>\n\n<p>Je combine les strat\u00e9gies RDB et AOF en fonction de la charge de travail, afin de minimiser la perte de donn\u00e9es et d'\u00e9viter que les bifurcations ne ralentissent l'ex\u00e9cution, tout en ajustant avec pr\u00e9cision les intervalles de persistance par shard afin de <strong>Pointes<\/strong> \u00e0 \u00e9viter. Ceux qui souhaitent approfondir le sujet trouveront des conseils pratiques dans le <a href=\"https:\/\/webhosting.de\/fr\/redis-persistance-rdb-aof-hebergement-serveur-guide\/\">Guide d'utilisation des fichiers RDB et AOF<\/a>, que j'utilise comme liste de contr\u00f4le pour des configurations productives, afin que les sauvegardes et les restaurations soient clairement document\u00e9es. Je surveille toujours l'utilisation de l'espace disque, la fragmentation, les statistiques de commande, les latences ainsi que les erreurs de connexion, car ces indicateurs signalent rapidement les goulots d'\u00e9tranglement et <strong>Pannes<\/strong> emp\u00eacher. En mati\u00e8re de s\u00e9curit\u00e9, je mise sur l'authentification, le protocole TLS, des liaisons restrictives et des pare-feu, afin que seuls les services autoris\u00e9s puissent acc\u00e9der au syst\u00e8me et que je puisse d\u00e9tecter rapidement les erreurs de configuration avant qu'elles ne causent des dommages et que la <strong>Disponibilit\u00e9<\/strong> compromettre. Dans les environnements \u00e0 plusieurs n\u0153uds, je planifie des fen\u00eatres de maintenance et je teste les proc\u00e9dures de basculement afin que chaque changement se d\u00e9roule de mani\u00e8re contr\u00f4l\u00e9e et que le service puisse \u00eatre planifi\u00e9 <strong>r\u00e9agit<\/strong>.<\/p>\n\n<h2>S\u00e9paration des ressources et mod\u00e8les d'h\u00e9bergement<\/h2>\n\n<p>J'\u00e9vite d'utiliser des instances Redis partag\u00e9es pour les projets critiques, car les latences impr\u00e9visibles entre instances augmentent et paralysent le d\u00e9pannage, ce qui compromet le respect des SLA des services et <strong>Co\u00fbts<\/strong> pour le d\u00e9pannage. Les instances d\u00e9di\u00e9es ou un cluster d\u00e9di\u00e9 garantissent des temps de r\u00e9ponse constants et une r\u00e9partition claire des responsabilit\u00e9s, ce qui est particuli\u00e8rement rassurant dans le domaine du commerce \u00e9lectronique et des backends d'API, car cela me permet de r\u00e9soudre les goulots d'\u00e9tranglement de mani\u00e8re isol\u00e9e et <strong>Risques<\/strong> limite. Celui qui p\u00e8se le pour et le contre trouve des rep\u00e8res dans la comparaison <a href=\"https:\/\/webhosting.de\/fr\/redis-partage-vs-dedie-performances-securite-cacheboost\/\">Partag\u00e9 vs. D\u00e9di\u00e9<\/a>, que j'utilise comme base pour le dimensionnement et le budget. Dans le cas de SLA assortis d'objectifs P95\/P99 tr\u00e8s stricts, je pr\u00e9f\u00e8re pr\u00e9voir une marge de man\u0153uvre plut\u00f4t que d'ajouter brusquement des n\u0153uds par la suite et de devoir effectuer un r\u00e9\u00e9quilibrage dans l'urgence, ce qui <strong>Erreur<\/strong> provoqu\u00e9. Pour les clients, je configure des espaces de noms, des instances isol\u00e9es ou des shards par client, afin que les quotas s'appliquent et qu'aucune valeur aberrante n'affecte les autres, et que la <strong>Planification<\/strong> est pr\u00e9serv\u00e9e.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/07\/Redis_Hosting_Strategie_2347.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Parcours de migration : du mode autonome au cluster<\/h2>\n\n<p>Je planifie les migrations par \u00e9tapes : je commence par dresser un inventaire des cl\u00e9s et des TTL, je nettoie les anciennes donn\u00e9es et je simule la r\u00e9partition des emplacements afin de mettre en \u00e9vidence les points sensibles et de pouvoir <strong>Top<\/strong>-Je donne la priorit\u00e9 aux cl\u00e9s. Ensuite, je mets en place un fonctionnement en parall\u00e8le, je migre les donn\u00e9es progressivement via la synchronisation ou le \u00ab warmup \u00bb et je bascule les clients de mani\u00e8re contr\u00f4l\u00e9e, afin que les sessions et les caches restent disponibles et que la <strong>Utilisateur<\/strong> Je ne remarque rien. Je teste au pr\u00e9alable le r\u00e9\u00e9quilibrage avec des profils de charge r\u00e9alistes, car c'est la seule fa\u00e7on d'\u00e9valuer objectivement la r\u00e9partition des slots, la contre-pression et les effets de latence. Dans le cadre du CI\/CD, j\u2019int\u00e8gre des contr\u00f4les d\u2019int\u00e9grit\u00e9 et des disjoncteurs afin que l\u2019application r\u00e9agisse correctement lors des migrations de slots et que les d\u00e9lais d\u2019expiration ne s\u2019aggravent pas, ce qui <strong>vuln\u00e9rabilit\u00e9 aux pannes<\/strong> r\u00e9duite. Une fois la commutation effectu\u00e9e, j'ajuste les param\u00e8tres relatifs \u00e0 la politique de m\u00e9moire (Memory-Policy), \u00e0 la m\u00e9moire maximale (Maxmemory) et aux \u00e9victions (Evictions) afin que la capacit\u00e9 soit adapt\u00e9e \u00e0 l'ensemble de donn\u00e9es et au taux de r\u00e9ussite du cache, et <strong>Charge de pointe<\/strong> est amorti avec aisance.<\/p>\n\n<h2>Exemples concrets tir\u00e9s du domaine de l'h\u00e9bergement web<\/h2>\n\n<p>Pour un petit blog WordPress enregistrant quelques milliers de visites quotidiennes, une instance autonome suffit g\u00e9n\u00e9ralement largement, car le cache d'objets all\u00e8ge sensiblement la charge de la base de donn\u00e9es et la <strong>Temps de r\u00e9ponse<\/strong> reste stable. Une boutique en ligne de taille moyenne b\u00e9n\u00e9ficiant d'un trafic r\u00e9gulier tire d'abord parti d'une instance autonome d\u00e9di\u00e9e et d'un suivi rigoureux ; d\u00e8s que le nombre de sessions et le cache de pages enti\u00e8res augmentent, le seuil de passage au cluster est atteint et la <strong>Extension<\/strong> in\u00e9vitable. Il est pr\u00e9f\u00e9rable de d\u00e9ployer directement en cluster les grandes plateformes multi-clients ou bas\u00e9es sur des microservices, car les donn\u00e9es d\u00e9passent les limites des shards et le basculement est indispensable pour que le checkout et les API restent accessibles m\u00eame en cas de d\u00e9faillance, et que la <strong>Conversion<\/strong> ne soit pas affect\u00e9e. Dans les topologies de microservices, je s\u00e9pare les charges de travail par fonction : sessions, mise en cache, files d\u2019attente. J\u2019\u00e9vite ainsi qu\u2019un flux de chat n\u2019alourdisse la latence du cache, ce qui <strong>Qualit\u00e9<\/strong> am\u00e9liore l'exp\u00e9rience utilisateur. Les entreprises qui livrent \u00e0 l'international r\u00e9partissent judicieusement leurs n\u0153uds sur le plan g\u00e9ographique et utilisent des r\u00e9pliques proches des utilisateurs, afin de r\u00e9duire les temps de transit (RTT) et d'acc\u00e9l\u00e9rer les op\u00e9rations de recherche et de panier. <strong>r\u00e9agissent<\/strong>.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/07\/redis-hosting-serverraum-1537.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>En bref : comment choisir la strat\u00e9gie Redis la plus adapt\u00e9e<\/h2>\n\n<p>Je prends une d\u00e9cision pragmatique : si le jeu de donn\u00e9es tient dans la m\u00e9moire vive d'un h\u00f4te et que la charge reste g\u00e9rable, j'opte pour le mode autonome afin de b\u00e9n\u00e9ficier d'une simplicit\u00e9 maximale et d'une tr\u00e8s haute performance par n\u0153ud, car cela me permet d'aller vite <strong>R\u00e9sultats<\/strong> Je vois. \u00c0 mesure que les donn\u00e9es et les besoins augmentent, je passe \u00e0 un cluster pour \u00e9voluer horizontalement, garantir la disponibilit\u00e9 et maintenir des temps de r\u00e9ponse fiables m\u00eame en p\u00e9riode de pointe, afin que <strong>client\u00e8le<\/strong> ne tombe pas en panne. Les facteurs d\u00e9cisifs sont les suivants : besoins en m\u00e9moire, parall\u00e9lisme, tol\u00e9rance aux pannes, conception des cl\u00e9s et maturit\u00e9 organisationnelle de l'exploitation. Gr\u00e2ce \u00e0 une surveillance rigoureuse, une persistance adapt\u00e9e, des ressources d\u00e9di\u00e9es et une conception disciplin\u00e9e des cl\u00e9s, Redis offre en environnement d\u2019h\u00e9bergement des latences constamment faibles et des d\u00e9bits \u00e9lev\u00e9s, qui se traduisent concr\u00e8tement au quotidien et constituent de v\u00e9ritables <strong>Vitesse<\/strong> apporte. Ainsi, la strat\u00e9gie Redis n'est pas une fin en soi, mais un levier clair pour le chiffre d'affaires, la satisfaction des utilisateurs et la s\u00e9curit\u00e9 de planification \u2013 fiable aujourd'hui, demain <strong>extensible<\/strong>.<\/p>","protected":false},"excerpt":{"rendered":"<p>D\u00e9couvrez si Redis Cluster ou Redis Standalone est le mieux adapt\u00e9 \u00e0 votre h\u00e9bergement web, et comment un h\u00e9bergement Redis optimis\u00e9 am\u00e9liore les performances, la mise en cache et l'\u00e9volutivit\u00e9.<\/p>","protected":false},"author":1,"featured_media":20101,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[781],"tags":[],"class_list":["post-20108","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-datenbanken-administration-anleitungen"],"acf":[],"_wp_attached_file":null,"_wp_attachment_metadata":null,"litespeed-optimize-size":null,"litespeed-optimize-set":null,"_elementor_source_image_hash":null,"_wp_attachment_image_alt":null,"stockpack_author_name":null,"stockpack_author_url":null,"stockpack_provider":null,"stockpack_image_url":null,"stockpack_license":null,"stockpack_license_url":null,"stockpack_modification":null,"color":null,"original_id":null,"original_url":null,"original_link":null,"unsplash_location":null,"unsplash_sponsor":null,"unsplash_exif":null,"unsplash_attachment_metadata":null,"_elementor_is_screenshot":null,"surfer_file_name":null,"surfer_file_original_url":null,"envato_tk_source_kit":null,"envato_tk_source_index":null,"envato_tk_manifest":null,"envato_tk_folder_name":null,"envato_tk_builder":null,"envato_elements_download_event":null,"_menu_item_type":null,"_menu_item_menu_item_parent":null,"_menu_item_object_id":null,"_menu_item_object":null,"_menu_item_target":null,"_menu_item_classes":null,"_menu_item_xfn":null,"_menu_item_url":null,"_trp_menu_languages":null,"rank_math_primary_category":null,"rank_math_title":null,"inline_featured_image":null,"_yoast_wpseo_primary_category":null,"rank_math_schema_blogposting":null,"rank_math_schema_videoobject":null,"_oembed_049c719bc4a9f89deaead66a7da9fddc":null,"_oembed_time_049c719bc4a9f89deaead66a7da9fddc":null,"_yoast_wpseo_focuskw":null,"_yoast_wpseo_linkdex":null,"_oembed_27e3473bf8bec795fbeb3a9d38489348":null,"_oembed_c3b0f6959478faf92a1f343d8f96b19e":null,"_trp_translated_slug_en_us":null,"_wp_desired_post_slug":null,"_yoast_wpseo_title":null,"tldname":null,"tldpreis":null,"tldrubrik":null,"tldpolicylink":null,"tldsize":null,"tldregistrierungsdauer":null,"tldtransfer":null,"tldwhoisprivacy":null,"tldregistrarchange":null,"tldregistrantchange":null,"tldwhoisupdate":null,"tldnameserverupdate":null,"tlddeletesofort":null,"tlddeleteexpire":null,"tldumlaute":null,"tldrestore":null,"tldsubcategory":null,"tldbildname":null,"tldbildurl":null,"tldclean":null,"tldcategory":null,"tldpolicy":null,"tldbesonderheiten":null,"tld_bedeutung":null,"_oembed_d167040d816d8f94c072940c8009f5f8":null,"_oembed_b0a0fa59ef14f8870da2c63f2027d064":null,"_oembed_4792fa4dfb2a8f09ab950a73b7f313ba":null,"_oembed_33ceb1fe54a8ab775d9410abf699878d":null,"_oembed_fd7014d14d919b45ec004937c0db9335":null,"_oembed_21a029d076783ec3e8042698c351bd7e":null,"_oembed_be5ea8a0c7b18e658f08cc571a909452":null,"_oembed_a9ca7a298b19f9b48ec5914e010294d2":null,"_oembed_f8db6b27d08a2bb1f920e7647808899a":null,"_oembed_168ebde5096e77d8a89326519af9e022":null,"_oembed_cdb76f1b345b42743edfe25481b6f98f":null,"_oembed_87b0613611ae54e86e8864265404b0a1":null,"_oembed_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_oembed_time_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_tldname":null,"_tldclean":null,"_tldpreis":null,"_tldcategory":null,"_tldsubcategory":null,"_tldpolicy":null,"_tldpolicylink":null,"_tldsize":null,"_tldregistrierungsdauer":null,"_tldtransfer":null,"_tldwhoisprivacy":null,"_tldregistrarchange":null,"_tldregistrantchange":null,"_tldwhoisupdate":null,"_tldnameserverupdate":null,"_tlddeletesofort":null,"_tlddeleteexpire":null,"_tldumlaute":null,"_tldrestore":null,"_tldbildname":null,"_tldbildurl":null,"_tld_bedeutung":null,"_tldbesonderheiten":null,"_oembed_ad96e4112edb9f8ffa35731d4098bc6b":null,"_oembed_8357e2b8a2575c74ed5978f262a10126":null,"_oembed_3d5fea5103dd0d22ec5d6a33eff7f863":null,"_eael_widget_elements":null,"_oembed_0d8a206f09633e3d62b95a15a4dd0487":null,"_oembed_time_0d8a206f09633e3d62b95a15a4dd0487":null,"_aioseo_description":null,"_eb_attr":null,"_eb_data_table":null,"_oembed_819a879e7da16dd629cfd15a97334c8a":null,"_oembed_time_819a879e7da16dd629cfd15a97334c8a":null,"_acf_changed":null,"_wpcode_auto_insert":null,"_edit_last":null,"_edit_lock":null,"_oembed_e7b913c6c84084ed9702cb4feb012ddd":null,"_oembed_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_time_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_03514b67990db061d7c4672de26dc514":null,"_oembed_time_03514b67990db061d7c4672de26dc514":null,"rank_math_news_sitemap_robots":null,"rank_math_robots":null,"_eael_post_view_count":"128","_trp_automatically_translated_slug_ru_ru":null,"_trp_automatically_translated_slug_et":null,"_trp_automatically_translated_slug_lv":null,"_trp_automatically_translated_slug_fr_fr":null,"_trp_automatically_translated_slug_en_us":null,"_wp_old_slug":null,"_trp_automatically_translated_slug_da_dk":null,"_trp_automatically_translated_slug_pl_pl":null,"_trp_automatically_translated_slug_es_es":null,"_trp_automatically_translated_slug_hu_hu":null,"_trp_automatically_translated_slug_fi":null,"_trp_automatically_translated_slug_ja":null,"_trp_automatically_translated_slug_lt_lt":null,"_elementor_edit_mode":null,"_elementor_template_type":null,"_elementor_version":null,"_elementor_pro_version":null,"_wp_page_template":null,"_elementor_page_settings":null,"_elementor_data":null,"_elementor_css":null,"_elementor_conditions":null,"_happyaddons_elements_cache":null,"_oembed_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_time_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_time_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_59808117857ddf57e478a31d79f76e4d":null,"_oembed_time_59808117857ddf57e478a31d79f76e4d":null,"_oembed_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_time_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_81002f7ee3604f645db4ebcfd1912acf":null,"_oembed_time_81002f7ee3604f645db4ebcfd1912acf":null,"_elementor_screenshot":null,"_oembed_7ea3429961cf98fa85da9747683af827":null,"_oembed_time_7ea3429961cf98fa85da9747683af827":null,"_elementor_controls_usage":null,"_elementor_page_assets":[],"_elementor_screenshot_failed":null,"theplus_transient_widgets":null,"_eael_custom_js":null,"_wp_old_date":null,"_trp_automatically_translated_slug_it_it":null,"_trp_automatically_translated_slug_pt_pt":null,"_trp_automatically_translated_slug_zh_cn":null,"_trp_automatically_translated_slug_nl_nl":null,"_trp_automatically_translated_slug_pt_br":null,"_trp_automatically_translated_slug_sv_se":null,"rank_math_analytic_object_id":null,"rank_math_internal_links_processed":"1","_trp_automatically_translated_slug_ro_ro":null,"_trp_automatically_translated_slug_sk_sk":null,"_trp_automatically_translated_slug_bg_bg":null,"_trp_automatically_translated_slug_sl_si":null,"litespeed_vpi_list":null,"litespeed_vpi_list_mobile":null,"rank_math_seo_score":null,"rank_math_contentai_score":null,"ilj_limitincominglinks":null,"ilj_maxincominglinks":null,"ilj_limitoutgoinglinks":null,"ilj_maxoutgoinglinks":null,"ilj_limitlinksperparagraph":null,"ilj_linksperparagraph":null,"ilj_blacklistdefinition":null,"ilj_linkdefinition":null,"_eb_reusable_block_ids":null,"rank_math_focus_keyword":"redis cluster","rank_math_og_content_image":null,"_yoast_wpseo_metadesc":null,"_yoast_wpseo_content_score":null,"_yoast_wpseo_focuskeywords":null,"_yoast_wpseo_keywordsynonyms":null,"_yoast_wpseo_estimated-reading-time-minutes":null,"rank_math_description":null,"surfer_last_post_update":null,"surfer_last_post_update_direction":null,"surfer_keywords":null,"surfer_location":null,"surfer_draft_id":null,"surfer_permalink_hash":null,"surfer_scrape_ready":null,"_thumbnail_id":"20101","footnotes":null,"_links":{"self":[{"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/posts\/20108","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/comments?post=20108"}],"version-history":[{"count":0,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/posts\/20108\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/media\/20101"}],"wp:attachment":[{"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/media?parent=20108"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/categories?post=20108"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/tags?post=20108"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}