Panoramica
Java™ è ancora uno dei linguaggi di programmazione maggiormente utilizzati dagli sviluppatori, ma per chi desidera utilizzare i container e Kubernetes presenta alcuni svantaggi. Quarkus offre agli oltre 7 milioni di sviluppatori Java la possibilità di continuare a realizzare nuove applicazioni utilizzando i framework che conoscono già.
Perché utilizzare Quarkus su Red Hat OpenShift
Le applicazioni Quarkus sono concepite per essere eseguite nei container, e Quarkus è integrato in modo nativo in Red Hat OpenShift per semplificare al massimo il deployment. Utilizzando Quarkus su Red Hat OpenShift, gli sviluppatori possono continuare a usare gli strumenti che conoscono già, sviluppare in modalità remota nei cluster, tramite IDE come Red Hat CodeReady Workspaces, sfruttare l'integrazione con la configurazione gestita, eseguire il deployment dei carichi di lavoro serverless e gestire lo storage utilizzato dalle applicazioni.
Quarkus fornisce inoltre l'integrazione con l'API Kubernetes, includendo un client API generico e una configurazione applicativa dinamica basata su Kubernetes ConfigMaps. La sottoscrizione Red Hat e il supporto per Quarkus sono inclusi nell'acquisto di Red Hat OpenShift.
Risorse da Red Hat
Quarkus per uno sviluppo più efficiente
Quarkus è uno strumento pensato per ottenere cicli di sviluppo più efficienti. Incrementando la produttività degli sviluppatori, le aziende possono rispondere più tempestivamente alla rapida evoluzione delle condizioni di mercato, accelerando lo sviluppo e il deployment di nuove applicazioni. Quarkus permette di ottenere più efficienza di sviluppo tramite caratteristiche come la codifica in tempo reale, lo sviluppo rapido dei cicli interni, l'integrazione con IDE quali Red Hat CodeReady Workspaces e API che vanno ben oltre gli standard Java tradizionali. Quarkus offre agli sviluppatori la possibilità di utilizzare una combinazione di standard, come MicroProfile, le API Spring Framework e altri framework molto diffusi, sfruttando al tempo stesso le efficienze di Quarkus su Kubernetes.
Migrazione delle applicazioni Spring Boot a Quarkus
Red Hat mette a disposizione un toolkit in grado di agevolare il trasferimento delle applicazioni Spring Boot attuali su Quarkus e Red Hat OpenShift. Il toolkit per la migrazione delle applicazioni (MTA) permette di esaminare un intero portafoglio di applicazioni Java, analizzando il codice sorgente o addirittura i file binari, per consentirti di scegliere tra una vasta gamma di percorsi di trasformazione (Java EE, JDK, Linux, containerizzazione, Quarkus e molto altro ancora) e velocizzare il processo di migrazione.
La versione 5.1 di MTA garantisce il supporto completo di Spring Boot in Quarkus.
Cos'è Quarkus?
Quarkus è un framework per la creazione di applicazioni Java Kubernetes native da eseguire nelle tradizionali macchine virtuali Java (JVM) o come eseguibili compilati in modo nativo. Oltre a ridurre al minimo i tempi di avvio e il consumo di memoria, Quarkus si integra con i framework e gli strumenti di sviluppo Java attuali per velocizzare lo sviluppo e il deployment delle applicazioni. Quarkus semplifica l'esecuzione nel cloud ibrido di applicazioni Java basate su serverless computing, microservizi, container, Kubernetes o altri tipi di applicazioni.
CONCETTI FONDAMENTALI DI QUARKUS
Quarkus è concepito per la realizzazione di applicazioni compatte ed efficienti da eseguire con i tradizionali runtime JVM (Java Virtual Machine), come OpenJDK, e consente di generare file binari eseguibili nativi per aumentare ulteriormente l'ottimizzazione. Per la riuscita dell'integrazione, è essenziale svolgere tutte le attività di preparazione durante la fase di generazione, che ricorre una volta sola durante il ciclo di vita di un'applicazione. Durante la fase di generazione, Quarkus compila innanzitutto l'applicazione in bytecode Java tradizionale, carica e analizza la configurazione, elabora le annotazioni, crea i metamodelli del framework e connette tutti i componenti assemblandoli in una tradizionale applicazione Java eseguibile, costituita da un file JAR. Al runtime, quando l'applicazione viene eseguita, non è più necessario dedicare memoria, CPU o tempo a tali operazioni, e questo permette di ridurre drasticamente i tempi di avvio.
COMPILAZIONE NATIVA
Le app Quarkus possono essere compilate in modo da ottenere un eseguibile nativo, per massimizzare l'efficienza. Utilizzando Mandrel (una distribuzione downstream di GraalVM), l'applicazione viene analizzata per individuare il "codice morto" (ovvero i percorsi del codice che non vengono mai seguiti in fase di runtime) ed eliminarlo dall'eseguibile dell'applicazione. In questo modo si ottiene un'applicazione eseguibile piccola e ottimizzata, che viene avviata in poche decine di millisecondi e richiede poche decine di megabyte di memoria al runtime.
Il blog ufficiale di Red Hat
Leggi gli articoli del blog di Red Hat per scoprire novità e consigli utili sulle nostre tecnologie, e avere aggiornamenti sul nostro ecosistema di clienti, partner e community.