Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

656
Views
Actualice la aplicación Angular en AWS S3 + Cloudfront

Implementé una aplicación Angular 9 de producción en S3 + frente a la nube. Funciona muy bien pero tengo algunos problemas cada vez que lanzo una nueva actualización de la aplicación. Leí muchos artículos:

  • https://medium.com/@sumn2u/react-progressive-web-app-s3-and-cloudfront-6c890fa873fb
  • https://medium.com/driven-by-code/on-the-importance-of-correct-headers-and-metadata-in-s3-origins-for-aws-cloudfront-50da2f9370ae

Configuré el almacenamiento en caché correcto para index.html y ngsw-worker.js para que no se almacenen en caché desde cloudFront. Cada implementación de Angular se guarda en S3 en una nueva carpeta con el número de compilación, así:

ingrese la descripción de la imagen aquí

Después de hacer esto, cambio el nombre del directorio de CloudFront para señalar la nueva ubicación. Desafortunadamente, hacer esto crea varios problemas a los clientes que tienen una versión anterior de la aplicación. De hecho, si el trabajador del servicio no recibió la actualización cuando el usuario cargó la aplicación, si el usuario carga alguna parte de la aplicación que no estaba almacenada en caché antes, obtengo un error al cargar el fragmento (porque ya no existe en S3 ).

Entonces, me pregunto cuál es la mejor manera de implementar continuamente una aplicación Angular en AWS S3 + CloudFront. ¿Se supone que debo cargar todos los archivos dentro de la misma carpeta? ¿No es demasiado ineficiente (muy pronto tendré miles de archivos)? Cualquier pista es realmente apreciada.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Puedes hacer lo siguiente:

  1. Implemente directamente la carpeta de compilación en el depósito S3.
  2. No se requiere para almacenar en caché el archivo index.html
  3. Siempre que implemente o cargue una compilación en S3, realice el siguiente paso
  4. Ir al frente de la nube
  5. Hacer invalidación de objetos
  6. Crear entrada /*

ingrese la descripción de la imagen aquí

Guión de implementación

Para una implementación continua, puede escribir un script usando boto3 de aws para invalidar automáticamente el almacenamiento en caché una vez que la carpeta se cargó correctamente.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!