Creare un'applicazione Quarkus
In questa unità si apprenderà come creare un'applicazione Quarkus.
App contenitore di Azure
App contenitore di Azure è un servizio contenitore serverless completamente gestito in Azure. Consente di eseguire applicazioni in contenitori senza preoccuparsi dell'orchestrazione o della gestione di un'infrastruttura complessa come Kubernetes. È possibile scrivere codici usando il linguaggio o il framework di programmazione preferito. (Qui si usano Java e Quarkus, ma è possibile usare qualsiasi cosa). È anche possibile creare microservizi con supporto completo di Distributed Apps Runtime (Dapr). I contenitori vengono dimensionati dinamicamente in base al traffico HTTP o a eventi basati su Kubernetes Event-Driven Autoscaling (KEDA).
Si vuole creare un'applicazione Quarkus che ospiti la logica in App contenitore e il database in un database PostgreSQL di Azure.
Database di Azure per PostgreSQL
Database di Azure per PostgreSQL è un servizio di database relazionale che si basa sul motore di database open source di Postgres. Si tratta di un database distribuito come servizio completamente gestito in grado di gestire carichi di lavoro cruciali offrendo prestazioni prevedibili, sicurezza avanzata, disponibilità elevata e scalabilità dinamica.
Quarkus
Quarkus è uno stack Java nativo di Kubernetes progettato per OpenJDK HotSpot e GraalVM. Viene creato dalle librerie e dagli standard Java più adatti. Quarkus è uno stack open source per la scrittura di applicazioni Java. Quarkus non è limitato ai microservizi, anche se è particolarmente adatto a essi.
Dal punto di vista dello sviluppatore, Quarkus offre un’esperienza di sviluppo ottimale: offre il ricaricamento rapido in tempo reale e la configurazione unificata e nasconde la complessità di GraalVM, consentendo di generare facilmente eseguibili nativi. Tutto senza introdurre un nuovo modello di programmazione. Quarkus consente di usare l'esperienza nelle librerie standard che si potrebbero già conoscere, ad esempio, CDI, JPA, Bean Validation e JAX-RS, e molti framework ben noti, come Eclipse Vert.x e Apache Camel.
Sviluppare l'applicazione Quarkus
Quarkus è un framework ideale per l'esecuzione delle applicazioni. È sufficiente aggiungere alcune estensioni Quarkus e il runtime farà tutto automaticamente. Grazie a Dev Services, non occorre installare un database PostgreSQL in locale. Dev Services usa Docker per scaricare un database PostgreSQL, configurarlo e avviarlo.
Il framework Quarkus è self-hosted e fornisce servizi di supporto per l'esecuzione dell'applicazione.
Creare le risorse usando l'interfaccia della riga di comando di Azure e Maven
Per creare le risorse è possibile usare l'interfaccia della riga di comando di Azure e Maven. È supportata in Linux, macOS e Windows L’interfaccia della riga di comando consente ad amministratori e sviluppatori di eseguire i comandi tramite un terminale o un prompt della riga di comando (o script) anziché tramite un Web browser.
Per ottenere i dettagli di una sottoscrizione, ad esempio, si può usare il comando seguente:
az account show
In questo modulo si usa l'interfaccia della riga di comando di Azure per creare l’ambiente App contenitore di Azure e l'istanza di Database PostgreSQL di Azure. È possibile accedere all'interfaccia della riga di comando di Azure da un terminale o tramite Visual Studio Code. In alternativa, si può accedere da Azure Cloud Shell. Questa shell basata sul browser è ospitata nel cloud. In Cloud Shell l'interfaccia della riga di comando di Azure è configurata per essere usata con una sottoscrizione di Azure.
Si usa lo strumento di gestione pacchetti Maven per eseguire il bootstrap del progetto. Maven fornisce anche le dipendenze di Quarkus e Dev Services per consentire di sviluppare e testare facilmente l'applicazione Quarkus.
Si usa Docker per eseguire e testare l'applicazione in locale con un database PostgreSQL.