Répondre

2

Il y a plusieurs options disponibles dans CloudFront, ainsi qu'à l'extérieur que vous pouvez faire pour réduire le temps de mise en cache

  • Exécuter une infirmation après chaque déploiement (Cela prend environ 15 minutes, mais il fait que le cache est nettoyé après chaque déploiement et peut également être automatisée en utilisant le CloudFront CLI)
  • la réduction de la valeur TTL du cache (Non recommandé car, il réduit également le temps de la mise en cache, ce qui réduit les performances)
  • Pour chaque déploiement, changer les noms de fichiers en annexant une valeur aléatoire et se référant également à la nouvelle valeur de l'application. eg /js/test_23434.js (Vous pouvez automatiser ceci avec Gulp ou n'importe quel script automatisé)
  • Pour chaque déploiement, incluez un paramètre de requête dans le chemin du fichier url par exemple /js/test.js?v=23434 et activez également le transfert paramètres de requête dans la configuration de comportement CloudFront
+0

comment exécuter la commande d'invalidation? – byteC0de

+0

Vous pouvez utiliser aws cloudfront créer-invalidation --distribution-id S11A16G5KZMEQD \ --paths /index.html /error.html ou au lieu de chaque fichier, vous pouvez utiliser wildcard eg --paths/* – Ashan

+0

Aussi vous pouvez le faire en utilisant la console Web Cloudfront en accédant à la section des invalidations – Ashan

4

Peu d'options:

  1. Vous pouvez définir TTL inférieure (dans les paramètres de CloudFront) sur vos actifs.
  2. Si vous souhaitez mettre en cache vos objets pour une durée plus longue; et vos ressources (html/css/js) ne changent pas fréquemment, vous pouvez vouloir purger ces ressources manuellement à l'aide de la console CloudFront. Vous pouvez le faire manuellement à l'aide de la console AWS via AWS CLI.
  3. Le plus propre est de mettre un numéro de version avec chaque actif comme fichier js/css. Utilisez un outil comme BURP tout en construisant votre application angulaire. Quelque chose app.1235.js .. Chaque fois que votre actif change; la version change et automatiquement il sera chargé frais.
+0

où est l'option de paramètres CloudFront – byteC0de