Sviluppo

Pyromac

Il cliente

Pyromac è un’azienda italiana specializzata in automazione dello sparo pirotecnico o Electronic Firing System che, come parte dei propri servizi, ha realizzato un’applicazione per smartphone (Music Sync App) con lo scopo di “sincronizzare emozioni”: allineare un qualsiasi numero di dispositivi mobili alla riproduzione simultanea della colonna sonora di uno spettacolo pirotecnico.

Il progetto

Pyromac si è rivolta ad ELAN42 – in quanto Google Cloud Partner – per ottenere una consulenza e supporto tecnico per la migrazione della propria infrastruttura server classica ad un ambiente Cloud scalabile, che fosse in grado di gestire sostanziali aumenti di carico in corrispondenza degli eventi pirotecnici, ma anche un radicale downscaling durante i periodi dell’anno senza eventi in cui la finalità del portale è unicamente informativo/commerciale e non ci sono eventi da gestire.

Il lavoro che abbiamo svolto per loro è stato quindi di:

  • Supporto sistemistico e tutoraggio al team di sviluppo del cliente nella migrazione del proprio back-end applicativo (basato sul framework Laravel) in chiave Cloud Native, più Stateless
  • Containerizzare con Docker l’applicativo Laravel, renderlo stateless mediante delle modifiche concordate con gli sviluppatori originali del progetto e rilasciarlo sulla piattaforma per la scalabilità automatica di Google (Cloud Run).
GCP containers autoscaling instance count

  • Effettuare degli stress test dell’applicativo – anche grazie a degli script di automazione – per capire la corretta allocazione di risorse da prevedere, sia lato software che hardware.
  • Migrare gli altri componenti del progetto in ambiente Google Cloud Platform (GCP): archiviazione e distribuzione dei contenuti multimediali (Cloud Bucket) e database (Cloud SQL).
  • Implementare un server NTP scalabile mediante il Google Kubernetes Engine (GKE).
    Implementare un bilanciatore di carico con gestione automatizzata dei certificati di sicurezza TLS.
GCP autoscaling Memory Allocation

Tutto il progetto ha seguito la logica GitOps : ogni configurazione fa parte di un repository che ha permesso la documentabilità, manutenibilità e progressiva automazione a lungo termine.

Il progetto è stato poi messo in produzione, dando a Pyromac la sicurezza di una infrastruttura tecnologicamente adeguata alla gestione di decine di migliaia di connessioni simultanee, ed una guida alla gestione del downscaling / upscaling dell’infrastruttura, che è automatizzato secondo parametri di natura economica.