15 janvier 2023

Codes d'Ă©tat HTTP CloudFlare cf-cache-status

Comprendre les codes d'Ă©tat HTTP CloudFlare cf-cache-status pour comprendre le bon fonctionnement du cache.

BanniĂšre d'Ă©tat Cloudflare CF

CloudFlare est un systÚme de réseau de diffusion de contenu (CDN) qui offre un certain nombre de fonctionnalités pour améliorer les performances et la sécurité du site Web. Parmi eux, la fonction de proxy inverse est l'une des plus importantes car elle masque l'adresse IP du serveur d'origine et protÚge le site Web des attaques DDoS et autres menaces.

En outre, en utilisant CloudFlare comme proxy inverse, vous pouvez bĂ©nĂ©ficier de sa fonctionnalitĂ© de mise en cache: il vous permet d'enregistrer une copie de la ressource demandĂ©e sur les serveurs CloudFlare, afin d'Ă©viter d'avoir Ă  toujours faire une demande au serveur d'origine, amĂ©liorant ainsi les performances du site Web, car il vous permet de rĂ©duire la latence et d'augmenter la vitesse de chargement des pages. Cependant, comprendre comment fonctionne le cache de CloudFlare et comment interprĂ©ter les codes d'Ă©tat peut ĂȘtre complexe.

Dans cet article, nous nous concentrerons sur un aspect spécifique de CloudFlare, à savoir les codes d'état du cache.

Comment fonctionne CloudFlare via un proxy inverse.

La fonction de proxy inverse de CloudFlare est basĂ©e sur NGINX, qui vous permet de masquer l'adresse IP du serveur d'origine et de protĂ©ger votre site Web contre les attaques DDoS et autres menaces. Cependant, CloudFlare a rĂ©cemment lancĂ© une migration du proxy inverse NGINX vers Pingora, une technologie Cloudflare interne, pour des raisons de performances. L'objectif de cette migration est d'apporter plus de flexibilitĂ© et de performance pour le traitement des requĂȘtes, notamment en ce qui concerne la gestion des attaques DDoS.

Un proxy inverse est un systÚme qui agit comme intermédiaire entre le client et le serveur d'origine. Lorsqu'un client fait une demande, elle est acheminée vers le proxy inverse, qui à son tour la transmet au serveur d'origine. Le proxy inverse reçoit alors la réponse du serveur d'origine et la transmet au client.

Schéma de proxy inverse Pingora

RĂ©ponses cf-cache-status et ce que cela signifie

La rĂ©ponse cf-cache-status fournie par CloudFlare est un indicateur important pour comprendre comment la requĂȘte a Ă©tĂ© traitĂ©e par le cache. Il existe plusieurs codes d'Ă©tat possibles, notamment HIT, MISS, EXPIRED, BYPASS, DYNAMIC et STALE, dont chacun indique une situation spĂ©cifique. Dans cet article, nous allons examiner en dĂ©tail la signification de ces codes d'Ă©tat et comment les interprĂ©ter pour optimiser les performances du site Web Ă  l'aide de CloudFlare.

cloudflare-cdn-header-cf-cache-statut

Les codes d'Ă©tat CloudFlare sont un ensemble de valeurs qui indiquent l'Ă©tat du cache d'une requĂȘte. Ces valeurs sont renvoyĂ©es dans le cadre de l'en-tĂȘte HTTP "cf-cache-status" et peuvent ĂȘtre utilisĂ©es pour comprendre comment CloudFlare gĂšre les requĂȘtes vers votre site.

Les valeurs les plus courantes pour l'en-tĂȘte "cf-cache-status" sont :

  • HIT: Cela indique que la requĂȘte a Ă©tĂ© servie Ă  partir du cache de CloudFlare. Cela signifie que CloudFlare a vu la demande et l'a servie sans la transmettre Ă  votre serveur d'origine.
  • MISS: Cela indique que la requĂȘte n'a pas Ă©tĂ© trouvĂ©e dans le cache de CloudFlare et a donc Ă©tĂ© transmise Ă  votre serveur d'origine pour ĂȘtre traitĂ©e.
  • EXPIRATION: Cela indique que la requĂȘte a Ă©tĂ© servie Ă  partir d'une ressource dans le cache de CloudFlare, mais que la ressource a expirĂ© et doit ĂȘtre mise Ă  jour par votre serveur d'origine.
  • CONTOURNE: Cela indique que CloudFlare a dĂ©cidĂ© de contourner le cache pour cette requĂȘte et de la transmettre directement Ă  votre serveur d'origine. Cela peut se produire dans le cas de requĂȘtes qui ne peuvent pas ĂȘtre mises en cache, telles que celles effectuĂ©es via la mĂ©thode POST.

De plus, il existe d'autres valeurs moins courantes comme "DYNAMIQUE","VICIÉ" et "MISE À JOUR” qui peut indiquer en dĂ©tail l'Ă©tat du cache de la requĂȘte.

Que signifie cf-cache-status:HIT ?

Le terme HIT dans la réponse cf-cache-status de CloudFlare indique que la demande a été traitée à partir du cache de CloudFlare, c'est-à-dire que CloudFlare a utilisé une copie de la ressource présente dans son cache pour traiter la demande. Cela évite de transmettre la demande au serveur d'origine, améliore les performances et réduit la latence, c'est-à-dire le temps jusqu'au premier octet ou TTFB.

Lorsque CloudFlare reçoit une demande, il vérifie d'abord son cache pour voir si une copie de la ressource demandée s'y trouve déjà. Si la copie est présente et toujours valide, CloudFlare l'utilise pour traiter la demande et renvoie une réponse HIT.

Que signifie cf-cache-status : MISS ?

Le terme MISS dans la rĂ©ponse cf-cache-status de CloudFlare indique que la demande n'a pas Ă©tĂ© traitĂ©e Ă  partir du cache de CloudFlare et donc transmise au serveur d'origine pour obtenir la ressource demandĂ©e. Cela peut arriver dans plusieurs cas, par exemple lorsque la ressource n'est pas prĂ©sente dans le cache CloudFlare ou lorsque la copie prĂ©sente dans le cache a expirĂ©. Dans ces cas, CloudFlare enverra la demande au serveur d'origine et enregistrera une copie de la rĂ©ponse dans son cache pour les demandes futures. Cela permet de rĂ©duire la charge sur le serveur d'origine et d'amĂ©liorer les performances pour les demandes ultĂ©rieures. La prochaine fois que vous accĂ©derez Ă  cette ressource, son statut devrait ĂȘtre HIT.

Que signifie cf-cache-status : EXPIRÉ ?

Le terme EXPIRED dans la rĂ©ponse cf-cache-status de CloudFlare indique que la demande a Ă©tĂ© servie par une copie de la ressource qui se trouve dans le cache de CloudFlare, mais que cette copie a expirĂ©. Cela signifie que CloudFlare a utilisĂ© une copie de l'asset qui se trouve dans son cache, mais que cette copie n'est plus valide car sa pĂ©riode de validitĂ© a expirĂ©. Dans ce cas, CloudFlare enverra une nouvelle requĂȘte au serveur d'origine pour obtenir une copie mise Ă  jour de la ressource et enregistrer une copie de la rĂ©ponse dans son cache pour les requĂȘtes futures. Cela aide Ă  maintenir le cache de CloudFlare Ă  jour et garantit que les demandes sont toujours servies avec la derniĂšre version de la ressource.

Que signifie cf-cache-status : BYPASS ?

Le terme BYPASS dans la réponse cf-cache-status de CloudFlare indique que la demande n'a pas été traitée à partir du cache de CloudFlare et a donc été transmise au serveur d'origine pour obtenir la ressource demandée. Cela peut arriver pour plusieurs raisons, par exemple :

  • CloudFlare peut ĂȘtre configurĂ© pour contourner le cache pour certaines requĂȘtes, telles que celles effectuĂ©es par des utilisateurs authentifiĂ©s ou Ă  partir d'adresses IP spĂ©cifiques.
  • La requĂȘte peut ĂȘtre de type POST, PUT, DELETE, c'est-Ă -dire des mĂ©thodes de requĂȘte qui ne peuvent pas ĂȘtre gĂ©rĂ©es par le cache.
  • La ressource peut avoir une Ă©tiquette de cache spĂ©cifique qui indique Ă  CloudFlare de ne pas la mettre en cache
  • La ressource peut avoir une courte durĂ©e de vie et il serait donc inappropriĂ© de la mettre en cache

Le contournement du cache CloudFlare signifie que la requĂȘte est transmise directement au serveur d'origine pour obtenir la ressource demandĂ©e, sans utiliser la copie prĂ©sente dans le cache CloudFlare. Cela permet de garantir que la demande est toujours servie avec la derniĂšre version de la ressource, mais peut avoir un impact sur les performances puisque la demande doit ĂȘtre traitĂ©e par le serveur d'origine.

Que signifie cf-cache-status : DYNAMIQUE ?

Le terme DYNAMIC dans la rĂ©ponse cf-cache-status de CloudFlare indique que la requĂȘte a Ă©tĂ© servie par une copie de la ressource prĂ©sente dans le cache de CloudFlare mais que cette copie a Ă©tĂ© gĂ©nĂ©rĂ©e dynamiquement. Cela signifie que CloudFlare a utilisĂ© une copie de la ressource qui Ă©tait dans son cache, mais cette copie a Ă©tĂ© gĂ©nĂ©rĂ©e dynamiquement au moment de la requĂȘte, Ă  l'aide d'un script ou d'une application. Ceci est utilisĂ© pour gĂ©rer le contenu dynamique tel que les sites Web utilisant PHP ou le contenu personnalisĂ© basĂ© sur l'utilisateur. Dans ce cas, CloudFlare utilise le cache pour Ă©viter de toujours traiter la requĂȘte via le script ou l'application, mais gĂ©nĂšre une copie dynamiquement uniquement lorsque cela est nĂ©cessaire. Cela amĂ©liore les performances et rĂ©duit la latence, mais nĂ©cessite plus de traitement que le mode de mise en cache statique.

Que signifie cf-cache-status : PÉRIMÉ ?

Le terme STALE dans la rĂ©ponse cf-cache-status de CloudFlare indique que la demande a Ă©tĂ© servie par une copie de la ressource dans le cache de CloudFlare, mais cette copie n'est plus valide car sa pĂ©riode de validitĂ© a expirĂ©. Dans ce cas, CloudFlare utilise la copie prĂ©sente dans son cache, mais envoie en mĂȘme temps une nouvelle requĂȘte au serveur d'origine pour obtenir une copie mise Ă  jour de la ressource. Cela permet Ă  la demande d'ĂȘtre servie immĂ©diatement Ă  l'aide de la copie en cache, mais garantit Ă©galement que le cache est Ă  jour avec la derniĂšre version de la ressource.

Ceci est utile lorsque vous souhaitez Ă©viter d'afficher une erreur pour une page indisponible, mais que vous souhaitez en mĂȘme temps disposer d'une copie Ă  jour de la ressource pour les demandes futures.

En gĂ©nĂ©ral, l'utilisation du mode « STALE Â» Ă©tablit un Ă©quilibre entre les performances et la fraĂźcheur du contenu, mais cela dĂ©pend des besoins spĂ©cifiques de votre site Web ou de votre application.

Que signifie cf-cache-status : MISE À JOUR ?

Le terme UPDATING dans la rĂ©ponse cf-cache-status de CloudFlare indique que la demande a Ă©tĂ© servie par une copie de la ressource dans le cache de CloudFlare, mais qu'une nouvelle copie de la ressource est actuellement extraite du serveur d'origine pour mettre Ă  jour le cache. Dans ce cas, CloudFlare utilisera la copie prĂ©sente dans son cache pour servir la requĂȘte en cours, mais en mĂȘme temps il enverra une nouvelle requĂȘte au serveur d'origine pour obtenir une copie mise Ă  jour de la ressource. Cela permet Ă  la demande d'ĂȘtre servie immĂ©diatement Ă  l'aide de la copie en cache, mais garantit Ă©galement que le cache est mis Ă  jour avec la derniĂšre version de la ressource aussi rapidement que possible.

Cet état UPDATING est transitoire et la demande sera ensuite servie avec l'une des réponses HIT, EXPIRED, STALE ou MISS, selon les paramÚtres de cache configurés.

Connaßtre ces valeurs et comprendre comment CloudFlare gÚre les demandes adressées à votre site peut vous aider à optimiser la configuration de votre compte et à améliorer les performances de votre site pour les visiteurs.

conclusion

CloudFlare est une solution abordable et fonctionnelle pour améliorer les performances et la sécurité des sites Web. Sa fonctionnalité de mise en cache et de réseau de diffusion de contenu (CDN) vous permet de réduire la latence et d'augmenter la vitesse de chargement des pages. Cependant, pour tirer le meilleur parti de CloudFlare, il est important de s'assurer que votre mise en cache est correctement configurée et efficace.

Une mesure importante pour Ă©valuer l'efficacitĂ© du cache de CloudFlare est le ratio HIT, c'est-Ă -dire le rapport entre les requĂȘtes servies depuis le cache (HIT) et celles qui doivent ĂȘtre transmises au serveur d'origine (MISS). Plus le ratio HIT est Ă©levĂ©, plus l'efficacitĂ© du cache est Ă©levĂ©e. Un faible ratio HIT indique que de nombreuses requĂȘtes doivent ĂȘtre transmises au serveur d'origine et que, par consĂ©quent, le cache n'est pas configurĂ© correctement ou n'est pas efficace.

Il y a un aspect crucial que personne ne dit, c'est que mĂȘme si CloudFlare aide Ă  rĂ©duire le TTFB et latence pour les requĂȘtes de type HIT, il a tendance Ă  les augmenter pour les requĂȘtes de type MISS ou en tout cas toutes celles qui ont besoin de rĂ©cupĂ©rer le contenu du serveur d'origine, en ajoutant la latence inverse nĂ©cessaire pour rĂ©cupĂ©rer le contenu du serveur d'origine et donc en ajoutant les deux la latence gĂ©ographique que la durĂ©e de la poignĂ©e de main SSL et le temps d'attente pour que le serveur d'origine gĂ©nĂšre une rĂ©ponse.

poignée de main tls-ssl

Pour tirer le maximum d'avantages de CloudFlare, il est donc important de surveiller en permanence le HIT Ratio et, si nĂ©cessaire, d'apporter des modifications Ă  la configuration du cache pour amĂ©liorer l'efficacitĂ©. De plus, il est Ă©galement important de surveiller d'autres indicateurs de performances tels que la latence, le nombre de requĂȘtes et l'Ă©tat des requĂȘtes pour avoir une image complĂšte du fonctionnement du cache et de votre configuration.

Vous ne savez pas comment configurer correctement le cache CloudFlare pour obtenir les performances maximales de votre site Web ? Vous ne savez pas si votre configuration actuelle est optimisĂ©e pour vos besoins ? Nous contacter! Nos experts vous aideront Ă  mieux comprendre le fonctionnement du cache CloudFlare et Ă  le configurer pour tirer le maximum d'avantages pour votre site Web. GrĂące Ă  nos conseils, vous pourrez augmenter la vitesse de votre site Web, amĂ©liorer l'expĂ©rience utilisateur et protĂ©ger votre site Web des attaques DDoS.

Vous avez des doutes ? Vous ne savez pas par oĂč commencer ? Contactez-nous !

Nous avons toutes les réponses à vos questions pour vous aider à faire le bon choix.

Discute avec nous

Discutez directement avec notre support avant-vente.

0256569681

Contactez-nous par téléphone pendant les heures de bureau 9h30 - 19h30

Contactez-nous en ligne

Ouvrez une demande directement dans l'espace contact.

INFORMATIONS

Managed Server Srl est un acteur italien leader dans la fourniture de solutions systÚme GNU/Linux avancées orientées vers la haute performance. Avec un modÚle d'abonnement peu coûteux et prévisible, nous garantissons que nos clients ont accÚs à des technologies avancées en matiÚre d'hébergement, de serveurs dédiés et de services cloud. En plus de cela, nous proposons des conseils systÚme sur les systÚmes Linux et une maintenance spécialisée en SGBD, sécurité informatique, Cloud et bien plus encore. Nous nous distinguons par notre expertise dans l'hébergement de CMS Open Source de premier plan tels que WordPress, WooCommerce, Drupal, Prestashop, Joomla, OpenCart et Magento, soutenus par un service d'assistance et de conseil de haut niveau adapté aux administrations publiques, aux PME et à toutes tailles.

Red Hat, Inc. dĂ©tient les droits de Red HatÂź, RHELÂź, RedHat LinuxÂź et CentOSÂź ; AlmaLinuxℱ est une marque commerciale d'AlmaLinux OS Foundation ; Rocky LinuxÂź est une marque dĂ©posĂ©e de la Rocky Linux Foundation ; SUSEÂź est une marque dĂ©posĂ©e de SUSE LLC ; Canonical Ltd. dĂ©tient les droits sur UbuntuÂź ; Software in the Public Interest, Inc. dĂ©tient les droits sur DebianÂź ; Linus Torvalds dĂ©tient les droits sur LinuxÂź ; FreeBSDÂź est une marque dĂ©posĂ©e de la FreeBSD Foundation ; NetBSDÂź est une marque dĂ©posĂ©e de la Fondation NetBSD ; OpenBSDÂź est une marque dĂ©posĂ©e de Theo de Raadt. Oracle Corporation dĂ©tient les droits sur OracleÂź, MySQLÂź et MyRocksÂź ; PerconaÂź est une marque dĂ©posĂ©e de Percona LLC ; MariaDBÂź est une marque dĂ©posĂ©e de MariaDB Corporation Ab ; REDISÂź est une marque dĂ©posĂ©e de Redis Labs Ltd. F5 Networks, Inc. dĂ©tient les droits sur NGINXÂź et NGINX PlusÂź ; VarnishÂź est une marque dĂ©posĂ©e de Varnish Software AB. Adobe Inc. dĂ©tient les droits sur MagentoÂź ; PrestaShopÂź est une marque dĂ©posĂ©e de PrestaShop SA ; OpenCartÂź est une marque dĂ©posĂ©e d'OpenCart Limited. Automattic Inc. dĂ©tient les droits sur WordPressÂź, WooCommerceÂź et JetPackÂź ; Open Source Matters, Inc. dĂ©tient les droits sur JoomlaÂź ; Dries Buytaert dĂ©tient les droits sur DrupalÂź. Amazon Web Services, Inc. dĂ©tient les droits sur AWSÂź ; Google LLC dĂ©tient les droits sur Google Cloudℱ et Chromeℱ ; Facebook, Inc. dĂ©tient les droits sur FacebookÂź ; Microsoft Corporation dĂ©tient les droits sur MicrosoftÂź, AzureÂź et Internet ExplorerÂź ; La Fondation Mozilla dĂ©tient les droits sur FirefoxÂź. ApacheÂź est une marque dĂ©posĂ©e de The Apache Software Foundation ; PHPÂź est une marque dĂ©posĂ©e du groupe PHP. CloudFlareÂź est une marque dĂ©posĂ©e de Cloudflare, Inc. ; NETSCOUTÂź est une marque dĂ©posĂ©e de NETSCOUT Systems Inc. ; ElasticSearchÂź, LogStashÂź et KibanaÂź sont des marques dĂ©posĂ©es d'Elastic NV. Ce site n'est affiliĂ©, sponsorisĂ© ou autrement associĂ© Ă  aucune des entitĂ©s mentionnĂ©es ci-dessus et ne reprĂ©sente aucune de ces entitĂ©s de quelque maniĂšre que ce soit. Tous les droits sur les marques et noms de produits mentionnĂ©s sont la propriĂ©tĂ© de leurs titulaires respectifs des droits d'auteur. Toutes les autres marques mentionnĂ©es appartiennent Ă  leurs titulaires. MANAGED SERVERÂź est une marque dĂ©posĂ©e au niveau europĂ©en par MANAGED SERVER SRL Via Enzo Ferrari, 9 62012 Civitanova Marche (MC) Italie.

JUSTE UN MOMENT !

Souhaitez-vous voir comment votre WooCommerce fonctionne sur nos systĂšmes sans avoir Ă  migrer quoi que ce soit ? 

Entrez l'adresse de votre site WooCommerce et vous obtiendrez une démonstration navigable, sans avoir à faire absolument quoi que ce soit et entiÚrement gratuite.

Non merci, mes clients préfÚrent le site lent.
Retour en haut de page