Cómo borrar el caché de la distribución de Cloudfront

Cómo borrar el caché de la distribución de Cloudfront

AWS CloudFront es un servicio de red de entrega de contenido (CDN), que ofrece datos rápido y seguridad en todo el mundo. Mantiene una copia de los archivos a su propio servidor para una entrega más rápida. A veces, cuando aplica cambios en su solicitud, no aparece en frontend inmediatamente. Esto se debe a que CloudFront sirve esos archivos desde su propio servidor. Se tarda un tiempo en leer los últimos archivos de los servidores originales.

Para aplicar cambios de inmediato, debe borrar la caché en Amazon CloudFront. AWS proporciona una opción para crear una solicitud de invalidación de caché contra su distribución CloudFront. Este tutorial te ayuda a borrar caché en Amazon CloudFront.

Borrar todo el caché de CloudFront

Debe tener herramientas AWS-Cli instaladas y configuradas en su sistema. Abra una terminal en su sistema, tenga instalado AWS-Cli. Ejecutar el siguiente comando para crear solicitud de invalidación de caché. Asegúrese de cambiar su_cf_dist_id con la ID de distribución de su distribución de CloudFront.

AWS CloudFront Create-Invalidation --Distribution-ID Your_CF_Dist_id--Paths "/*" 

En el éxito, verá los resultados como a continuación.

"Ubicación": "https: // CloudFront.amazonaws.com/2019-03-26/distribución/your_cf_dist_id/invalidation/i1yh8tkx3dc1mk "," invalidación ": " id ":" i1yh8tkx3dc1mk "," estado ":" inprogress "," createTime ":" 2020-08-12t14: 09999999999 : 03.117z "," InvalidationBatch ": " rutas ": " cantidad ": 1," elementos ": ["/*"]," CallerReference ":" CLI-1597241342-987270 " 

El estado actual de la invalidación es "inprogress". Tenga en cuenta la identificación de la solicitud de invalidación para verificar el estado de las solicitudes de invalidación.

Borrar archivos específicos de caché

En lugar de borrar todo el chache, puede borrar archivos específicos de CloudFront Cache. Por ejemplo, acaba de actualizar 1 o 2 archivos en su aplicación. Ahora, debe borrar esos archivos solo de CloudFront.

Para borrar archivos específicos de Cache, ejecute el comando de la siguiente manera:

AWS CloudFront Create-Invalidation --Distribution-ID Your_CF_Dist_id \--Paths "/static/images/newfile.jpg ""/static/css/style.CSS "  

El comando anterior se borrará solo/static/images/newfile.jpg y/static/css/style.CSS de CloudFront Cache, por lo que los nuevos archivos se reflejarán inmediatamente.

Ver estado de solicitud de invalidación

Ahora, use el siguiente comando para verificar el estado de la solicitud de invalidación. Ejecute el siguiente comando con su ID de distribución de CloudFront y pase la ID de solicitud al parámetro "-id". Vea el siguiente ejemplo:

AWS CloudFront Get-Invalidation --Distribution-Id Your_CF_Dist_ID --ID I1YH8TKX3DC1MK 
"Invalidación": "id": "i1yh8tkx3dc1mk", "estado": "completado", "createTime": "2020-08-12t14: 09: 03.117z "," InvalidationBatch ": " rutas ": " cantidad ": 1," elementos ": ["/*"]," CallerReference ":" CLI-1597241342-987270 " 

El proceso de invalidación lleva menos de un minuto. Una vez que la solicitud de invalidación se completó con éxito, verá el estado como "Completado".