Integrazione ETL fra gestionale e applicazione web

contesto

Portale sviluppato su ambiente LAMP ad alto traffico nel settore automotive.

richiesta

Il cliente segnala difficoltà nell’aggiornamento manuale delle immagini, mancati aggiornamenti che causano problemi di visualizzazione e lentezza nel caricamento delle pagine. Ha richiesto un sistema automatico per sincronizzare le immagini, con monitoraggio continuo e miglioramenti delle performance del portale.

solution
Attività

Automazione della sincronizzazione

Per migliorare la sincronizzazione delle immagini, abbiamo implementato il seguente processo:

  1. sincronizzazione delle immagini: le immagini vengono caricate dal gestionale in un’area di scambio dati utilizzando un bucket S3;
  2. generazione delle miniature: ogni volta che un’immagine viene aggiunta o modificata nel bucket S3, una funzione lambda in Python si attiva automaticamente per creare le relative miniature;
  3. salvataggio delle miniature: le miniature generate vengono poi salvate in un altro bucket S3.

Per monitorare il processo abbiamo configurato Cloudwatch con relativi alert e avvisi tramite email/sms in caso di errore durante l’esecuzione.

 

Miglioramento delle performance

Dall’analisi abbiamo rilevato che gli asset del portale (come immagini e file css/js) venivano erogati senza alcuna ottimizzazione.
Per migliorare le performance abbiamo adottato le seguenti misure:

  • ottimizzazione degli asset: oltre a generare le miniature delle immagini, abbiamo configurato una CDN (Content Delivery Network) tramite CloudFront per distribuire gli asset in modo più efficiente;
  • ottimizzazione per dispositivi mobili: quando una richiesta proviene da un dispositivo mobile, le immagini vengono ulteriormente ottimizzate riducendo la risoluzione tramite il servizio Lambda@Edge.

 

Schema di integrazione fra gestionale e applicazione web tramite aws

Schema di integrazione fra gestionale e applicazione web tramite aws

 

Stack tecnologico

 

AWS
  • S3 (area di scambio e sorgente immagini)
  • Cloudfront (cdn per l’erogazione delle immagini)
  • Lambda (generazione delle miniature)
  • Lambda@Edge (generazione miniature per dispositivi mobili)
  • Cloudwatch (monitoraggio ed alert)
Python
Risultati

Il nuovo processo di sincronizzazione ha permesso di gestire l’aggiornamento di circa 160.000 immagini e la generazione delle relative 480.000 miniature in un decimo del tempo rispetto alla precedente procedura.

Sul portale il tempo di caricamento delle pagine e delle immagini si è ridotto migliorando le web vitals, ottenendo perciò anche un beneficio sulla SEO.

Il costo dei servizi AWS utilizzati è inferiore ai 5 dollari mensili e comprende:

  • spazio utilizzato su S3;
  • esecuzione delle lambda;
  • banda utilizzata da Cloudfront per l’erogazione degli assets.
related
  • Integrazioni e processi ETL

  • Cloud

  • Applicazioni web

contattaci
Per ulteriori informazioni o per discutere delle vostre esigenze, non esitate a contattarci compilando il form o scrivendoci a [email protected]
Unisciti a noi per trasformare il tuo futuro digitale!
Abilita JavaScript nel browser per completare questo modulo.
Checkbox privacy