Résumé

  • Avec la tarification à l’usage, CloudFront offre les 1 000 premiers chemins d’invalidation mensuels par compte, puis facture 0,005 dollar par chemin. Un joker couvrant des milliers de fichiers compte pour un seul.
  • Une invalidation étendue peut provoquer du travail supplémentaire à l’origine lors des demandes suivantes. Les transferts de récupération depuis une origine AWS sont gratuits ; les services de cette origine gardent leurs propres tarifs.
  • Les forfaits CloudFront incluent déjà les invalidations. Dans les deux formules, nommer les versions et choisir le périmètre restent des décisions à la charge du client.

Le service financier aime les lignes courtes. Une instruction telle que /* possède à cet égard des qualités remarquables : elle tient en deux caractères et peut demander l’invalidation de tout le contenu d’une distribution CloudFront. Au tarif à l’usage, elle ne compte pourtant que pour un chemin. La gomme de précision et le grand rouleau ont le même ticket d’entrée.

AWS décrit cette unité sans mystère. Les 1 000 premiers chemins du mois sont gratuits, à l’échelle du compte et de l’ensemble de ses distributions. Au-delà, le prix publié est de 0,005 dollar par chemin ou élément d’invalidation par tag. Un chemin terminé par un joker peut désigner des milliers de fichiers tout en restant une unité. À l’inverse, regrouper plusieurs chemins dans une seule requête ne les transforme pas en un seul : le compteur suit les chemins.

Prenons un calcul limité à ces frais, une fois la franchise consommée. Dix chemins distincts coûtent cinq cents ; un joker qui les couvre coûte un demi-cent. Qu’il emporte au passage quantité de fichiers parfaitement à jour ne change pas cette ligne. La grille tarifaire rémunère l’instruction, sans faire l’inventaire économique de ce qu’elle déplace.

Ce détail crée une drôle d’incitation pour les organisations pressées. Décrire précisément ce qui a changé demande de connaître les dépendances de la publication. Élargir le périmètre demande une étoile. Si la réussite se mesure au temps gagné par l’équipe qui livre et aux frais d’invalidation évités, la précision part avec un handicap avant même qu’on ait examiné le trafic.

La deuxième facture est moins commode

Une copie en cache évite de refaire certaines opérations à chaque visite. Quand CloudFront invalide un fichier, la demande suivante amène la récupération de la dernière version depuis l’origine. Il ne recharge pas immédiatement tous les objets à la seule réception de la commande. La documentation sur l’invalidation décrit donc une économie différée : on retire aujourd’hui, et les prochaines demandes déterminent ce qu’il faudra aller chercher.

Le contenu inchangé mais très consulté devient alors intéressant. L’avoir inclus dans une grande invalidation peut remettre en circulation un travail que sa copie aurait épargné. L’ampleur dépend des visites, des étages de cache et de la consolidation des requêtes. Un fichier oublié de tous ne réclame rien simplement parce qu’on l’a invalidé. Un objet populaire n’impose pas non plus mécaniquement une requête à l’origine par visiteur.

La tentation est grande de dramatiser le problème en inventant une facture de bande passante. AWS exonère les transferts de récupération depuis ses services d’origine vers CloudFront. Restent les frais propres au service d’origine, ainsi que le temps nécessaire pour obtenir le contenu. La bonne question porte sur ce travail réel, pas sur des octets auxquels on aurait attribué un péage imaginaire.

On peut ainsi faire baisser la dépense la plus visible tout en augmentant une dépense moins bien attribuée. L’équipe de publication montre sa petite ligne d’invalidation ; l’équipe plateforme explique ses requêtes et ses délais. Chacune peut avoir raison sur son périmètre comptable. C’est précisément le défaut d’une comptabilité découpée avant d’avoir compris l’opération.

Une étoile ne remplace pas un plan de classement

Le périmètre est aussi une affaire de représentation. CloudFront exige que le joker termine le chemin. Les variantes mises en cache selon des cookies ou des en-têtes sont invalidées ensemble pour le chemin concerné ; cette opération ne permet pas d’en choisir une seule. Avec les chaînes de requête, il faut désigner les variantes voulues ou les couvrir par un joker. Ces distinctions figurent dans les règles de sélection des objets.

Une organisation qui ignore comment ses objets sont nommés paiera donc sa précision en enquête. Une invalidation large achète un raccourci. Il peut être raisonnable ; il peut aussi devenir une rente versée chaque semaine à une dépendance que personne ne veut documenter. Le tarif ne tranche pas ce choix à la place du client.

Les noms de fichiers versionnés offrent une autre répartition du travail. La nouvelle publication pointe vers un nouveau nom ; l’ancien fichier peut rester disponible. AWS recommande cette pratique pour les changements fréquents, notamment parce qu’elle facilite le suivi dans les journaux et les retours à une version antérieure, sans frais d’invalidation. Un navigateur ou un proxy conservant l’ancien fichier peut recevoir une demande portant sur le nouveau nom, là où vider CloudFront seul ne commandait pas son cache.

Il faut alors tenir les références à jour et conserver les anciennes versions utiles. Le travail quitte la purge pour entrer dans la fabrication et l’archivage des publications. C’est moins spectaculaire qu’un bouton qui efface tout, et souvent plus exigeant au départ. Les économies éventuelles viennent de cette organisation, pas d’un tour de passe-passe sur le mot gratuit.

Enfin, le tarif au chemin n’est plus la seule offre : les forfaits CloudFront comprennent l’invalidation rapide à tous leurs niveaux. Ils retirent cette dépense unitaire du calcul marginal, mais la portée d’une commande et le travail de l’origine demeurent. Pour départager les options d’une publication précise, il manque ses traces de récupération et les prix de son origine ; ce sont eux qui peuvent renverser le choix.

La petite leçon de CloudFront est une leçon de direction financière. Une unité facturable peut être parfaitement définie tout en restant un mauvais indicateur de l’effort qu’elle déclenche. Une étoile coûte peu à écrire. Ce qu’elle autorise mérite une phrase plus longue.