The future of app development
corso specialistico 1 e 2 ottobre 2025
Italian Omnis Developer Conference 2025 (ODC 25)

Luogo: Grand Hotel Adriatico Via Maso Finiguerra, 9, 50123 Firenze FI Firenze centro (pochi minuti a piedi dalla stazione centrale)
Data:    Mercoledì 1 ottobre 2025 e Giovedì 2 ottobre 2025
Orario:  9.30-17.30

Titolo: Infrastruttura moderna per il Cloud (con focus su AWS)

Focus: una serie di contenuti/risorse che riteniamo possano essere utili ad altri sviluppatori che utilizzano Omnis:

Contenuti:
Il contenuto è fortemente focalizzato su AWS, poiché è la piattaforma che abbiamo sempre utilizzato per l’infrastruttura Omnis. Se ci sarà tempo, possiamo esplorare anche alternative come OVHcloud e valutare eventuali opportunità di mercato in quel contesto.

Il materiale è pensato partendo dal presupposto che le persone non abbiano alcuna particolare esperienza con AWS o infrastrutture cloud moderne. Se ci sono persone con un background già solido in quest’area, alcune sezioni potranno essere saltate o trattate più rapidamente.

Nei limiti dei due giorni a disposizione, il docente è aperto a trattare argomenti proposti dai partecipanti.

Aspetti principali trattati dal corso avanzato:

Postgres su RDS

Obiettivi:

  • Creare un’istanza Postgres su RDS

Docker

Docker consente di creare, testare e distribuire applicazioni in modo rapido e semplice, impacchettando librerie, strumenti di sistema, codice e runtime in un’unica entità chiamata container. Questo garantisce che un’applicazione che funziona sul proprio computer funzionerà allo stesso modo anche sul server di destinazione.

Obiettivi:

  • Installare Docker Desktop
  • Creare un Dockerfile per il server headless di Omnis Studio che si connetta al nostro server Postgres su RDS
  • Costruire l’immagine del container e testarla localmente

AWS ECR (Elastic Container Registry)

AWS ECR è un servizio per la gestione di immagini di container che permette agli sviluppatori di salvare, condividere e distribuire immagini in modo sicuro.

Obiettivi:

  • Installare la CLI (Command Line Interface) di AWS
  • Creare un registro privato su ECR
  • Autenticarsi su ECR tramite la CLI
  • Caricare l’immagine del container nel registro privato

AWS EC2 (Elastic Compute Cloud)

AWS EC2 fornisce capacità di calcolo scalabile on-demand, permettendo la creazione e gestione di server virtuali nel cloud.

Obiettivi:

  • Creare un’istanza EC2
  • Installare Docker sul server
  • Scaricare l’immagine del container dal registro ECR
  • Avviare manualmente il container sul server

Gestione dei container con Portainer

Esistono diverse soluzioni per amministrare container in produzione, tra cui Kubernetes, noto per la sua potenza ma anche per la sua complessità e curva di apprendimento elevata, adatta soprattutto a infrastrutture definite come codice.

Un’alternativa più semplice e accessibile è Portainer, un’interfaccia web intuitiva per la gestione dei container.

Obiettivi:

  • Installare Portainer su una nuova istanza EC2
  • Installare l’agente Portainer sul server che ospita l’applicazione
  • Accedere all’interfaccia web di Portainer e connettersi all’agente
  • Creare e avviare uno stack tramite Portainer
  • Monitorare il container attraverso l’interfaccia web
  • Aggiornare l’immagine del container e riavviare lo stack tramite Portainer

Creazione di uno Stack con MySQL e Omnis Studio Headless

Obiettivi:

  • Sviluppare un nuovo Dockerfile per MySQL e per un’applicazione basata su Omnis Studio headless che utilizza MySQL come database
  • Costruire le immagini dei container e caricarle sul registro privato
  • Installare l’agente Portainer sul server che ospiterà l’applicazione
  • Configurare ed avviare lo stack completo tramite l’interfaccia web di Portainer

Multithreading versus Multiprocessing

Obiettivi:

  • Comprendere le differenze tra Multithreading e Multiprocessing, illustrandone vantaggi, svantaggi e casi d’uso tipici
  • Adottare il Multithreading come approccio predefinito per migliorare la reattività e la concorrenza dell’applicazione
  • Ricorrere al Multiprocessing solo quando strettamente necessario, ad esempio per operazioni CPU-intensive che beneficiano dell’esecuzione parallela su più core

AWS ECS

Elastic Container Service è una piattaforma di orchestrazione di container completamente gestita, che consente il deployment, la gestione e il dimensionamento automatico di applicazioni containerizzate.

Obiettivi:

  • Eseguire l’applicazione Omnis Studio headless su AWS ECS utilizzando l’immagine del container precedentemente caricata nel registro privato