- Utiliser Google Cloud Storage et Cloud Run pour un CDN - 2
- Deuxième article sur la mise en place d'un CDN en utilisant Google Cloud Storage et Cloud Run. Nous allons expliquer comment optimiser la transmission des images et des fichiers texte, et comment déployer les ressources dans 8 régions du monde pour réduir
Texte traduit par l'IA.
Optimisation et synchronisation d'images à l'aide de Google Cloud Storage et Cloud Run - 3
Résumé du texte par durumis AI
- Cet article explique comment optimiser les fichiers image téléchargés sur Google Cloud Storage en les convertissant en différents formats à l'aide de Cloud Run.
- Il exploite les événements de téléchargement et de suppression de fichiers de Cloud Storage pour convertir les fichiers image en AVIF et WebP, et compresser les fichiers texte avant de les répliquer et de supprimer les fichiers dans d'autres régions pour la synchronisation.
- Cela permet de gérer efficacement l'optimisation des images et la synchronisation des fichiers dans un environnement CDN. L'article se termine par une présentation de la suite de l'article qui portera sur l'utilisation de Google Cloud Load Balancer.
Dans l'article précédent, nous avons abordé la question de la transmission des fichiers image synchronisés avec GCS à l'aide de Cloud Run.
Nous allons donc conclure cette série d'articles sur le CDN en abordant la synchronisation et l'optimisation des images dans GCS.
Cloud Run fonctionne fondamentalement via un hook HTTP, mais ce n'est pas le seul déclencheur d'événement.
Cloud Run
Lors de la configuration de Cloud Run, vous trouverez une section intitulée "Trigger" (Déclencheur), qui propose une liste d'options telles que Pub/Sub, Cloud Storage, Filestore et autres. À l'exception du protocole HTTP fourni par défaut, les autres options correspondent aux produits les plus utilisés. De plus, la plupart des événements imaginables se trouvent dans la catégorie "Autres". Commençons par sélectionner l'événement Cloud Storage pour y accéder. Vous trouverez alors différents types d'événements tels que la modification d'un fichier, la suppression d'un fichier, la création d'un fichier ou la modification des métadonnées d'un fichier.
Cloud Run Eventarc
En utilisant les deux événements "deleted" (supprimé) et "finalized" (finalisé), nous pouvons créer une instance Cloud Run qui gère les événements liés au téléchargement ou à la suppression de fichiers dans GCS.
Les tâches à exécuter dans Cloud Run sont principalement les suivantes :
- Lors du téléchargement d'un fichier, nous vérifions son type et appliquons le processus suivant :
- S'il s'agit d'un fichier texte (css, js), nous le compressons en utilisant br et gzip.
- S'il s'agit d'un fichier image, nous utilisons sharp npm pour générer des formats convertis en avif et webp.
- Le nouveau fichier généré est ensuite répliqué vers d'autres "régions" définies.
- Lors d'une demande de suppression de fichier, nous supprimons également le fichier correspondant dans les autres régions.
En substance, si ces trois opérations (conversion, réplication, suppression) sont correctement gérées, la synchronisation des fichiers ne pose pas de difficulté majeure, même si plusieurs régions sont impliquées. Le code est également facile à gérer, car il ne nécessite que deux npm, à savoir la connexion à GCS et l'utilisation de sharp.
Ceci conclut cette série d'articles de base sur le CDN.
Dans les prochains articles, nous aborderons le sujet de GCLB (Google Cloud Load Balancer).
Bien que le sujet du CDN soit intrinsèquement lié à celui des équilibreurs de charge (LB), certains aspects ont été omis. Nous allons donc les aborder dans une série d'articles à venir.
Merci.