devstory

Comment réduire les coûts d'Amazon Cloudfront?

  1. L'objectif de l'article
  2. Quels sont les tarifs d'Amazon Cloudfront ?
  3. Comment réduire les coûts d'utilisation?

1. L'objectif de l'article

J'utilisais Cloudflare depuis 3 ans. Pendant ce temps, j'ai également découvert de nombreux autres services CDN proposés à travers le monde. Finalement, j'ai découvert Amazon Cloudfront, qui est l'un de mes meilleurs choix. Tout le monde en parle sur différents forums. Il n'y a aucun doute sur sa qualité, mais la mauvaise nouvelle est qu'il est très cher. Certaines personnes doivent payer des factures allant jusqu'à de centaines de dollars par mois pour ce service, celles qui sont désorbitantes par rapport aux frais de Cloudflare.
Dans cet article, je vais aborder des solutions permettant de réduire le coût de transfert de données à partir de Cloudfront (Amazon S3) vers Internet, pour que vous puissiez utiliser ce service en toute tranquillité sans vous soucier de l'augmentation de la facture.
Tout d'abord, veuillez lire l'article ci-dessous à propos d'Amazon Cloudfront et de sa relation avec Amazon S3:
Vous pouvez également lire l'article ci-dessous portant sur les différences entre Cloudfront et Cloudflare:
  • Cloudfront vs Cloudflare

2. Quels sont les tarifs d'Amazon Cloudfront ?

Lorsque vous utilisez le paquet Cloudflare Pro, vous devez payer 20$ par site Web; alors qu'Amazon Cloudfront ne s'intéresse pas au nombre de sites Web que vous utilisez. Ce qui importe, c'est la quantité de données distribuée sur Internet, et c'est ainsi qu'ils prennent de l'argent de votre poche.
Avant de proposer une solution moins coûteuse en utilisant Cloudfront, il est nécessaire de faire un tour sur les tarifs de Cloudfront. Je n'aborde que le coût du transfert de données sur Internet à partir de deux régions à bas prix d'Amérique ou d'Europe.
À la base, lorsque vous utilisez Cloudfront, vous obtenez 1GB gratuit chaque mois. Plus tard, un frais d'environ $0.085/1GB sera demandé. Au total, vous devrez payer un dollar pour transférer seulement 11,7GB de données sur Internet.
Une page comprendra du HTML et d'autres données statiques telles que Image, Css, Javascript, etc. d'une taille moyenne d'environ 2MB, ou parfois 5MB si votre site Web contient beaucoup d'images. En supposant que chaque page fait 2MB et que chaque utilisateur consulte une page de la vôtre, 11,7GB ne suffisent que pour desservir 5990 personnes (et vous devez payer 1$ à Amazon).
Si votre site Web a 20.000 page vues chaque jour, cela vous coûtera 3,3$ et vous devrez payer 100$ chaque mois. Il est normal que les sites Web avec beaucoup de trafic reçoivent une facture de 500$ ou plus.
Ci-dessous une comparaison avec la location d'un VPS:
  • Avec la location d'un VPS au prix de $5/Month ($5/Mois), vous obtenez 25GB de stockage et 1000GB de transmission de données gratuitement.
  • Avec la location d'un VPS au orux de $20/Month ($20/Mois), vous obtenez 80GB de stokage et 4TB de transmisison de données gratuitement.
En effet, l'utilisation du service d'Amazon Cloudfront est coûteuse. Vous pouvez cliquer sur le lien ci-dessous pour la liste de prix détaillée.

3. Comment réduire les coûts d'utilisation?

À la mi-2020, je suis passé au service VPS DigitalOcean et j'ai découvert qu'ils proposaient un excellent service de stockage appelé DigitalOcean Spaces. Ce service a une architecture similaire à Amazon S3 et est entièrement compatible avec Amazon S3 Rest API.
DigitalOcean vous permet de créer des Spaces. Chaque Spaces ressemble à un S3 Bucket d'Amazon S3, mais plus important encore, Spaces supporte déjà CDN.
Les tarifs de DigitalOcean Spaces sont peu coûteux. Avec 5$ par mois, vous disposez d'un disque dur de 250GB et vous pouvez créer des Spaces illimités et 1TB gratuit pour transférer des données sur Internet. Si vous dépassez ce quota, vous devrez payer des frais supplémentaires de $0.02/1GB.
Vous le savez probablement qu'une page de site Web comprend du contenu HTML et d'autres contenus tels que Css, Javascript, Image, etc. En supposant que la taille totale de tout est de 2GB, dans laquelle le contenu HTML est très petit, seulement environ 10KB à 100KB. Si vous ne placez que des données HTML dans Amazon S3 et d'autres données statiques dans DigitalOcean Spaces, le montant de votre facture sera réduit d'au moins 20 fois.
Si vous n'avez jamais utilisé DigitalOcean, cliquez sur le lien ci-dessous et créez un nouveau compte. Vous obtiendrez un crédit de 100$ valide en deux mois.
  • Create DigitalOcean Spaces Bucket
Gzip?
Amazon Cloudfront supporte Gzip pour compresser les fichiers statiques. Lorsque cela est activé, la taille des fichiers HTML peut être réduite jusqu'à 5 fois. Lorsqu'une requête est envoyée à Cloudfront, elle retournera au navigateur un fichier Gzip, le navigateur extraira ce fichier pour obtenir le contenu HTML d'origine.
En supposant que les fichiers HTML d'une taille d'environ 100KB soient compressés en 20KB et que votre site Web affiche 20.000 pages vues par jour, Cloudfront transférera 390MB vers Internet. Cloudfront transférera 11,5GB sur Internet en un mois, ce qui équivaut à 1$ (un montant stupéfiant).
Remarque: En réalité, les tarifs d'Amazon Cloudfront sont un peu plus compliqués. Ils dépendent de la localisation géographique du serveur desservant l'utilisateur. Cependant, avec la solution susmentionnée, vos factures Amazon seront considérablement réduites.
  • Amazon Gzip S3