Jump to section

Cos'è Quarkus?

Copia URL

Quarkus è un framework Java Kubernetes native full-stack, realizzato per le macchine virtuali Java (JVM) e per la compilazione nativa. Il framework ottimizza Java specificamente per i container, trasformandolo in una piattaforma efficiente per ambienti serverless, cloud e Kubernetes.

Quarkus è progettato per operare con gli standard, i framework e le librerie Java più diffuse, come Eclipse MicroProfile, Apache Kafka, RESTEasy (JAX-RS), Hibernate ORM (JPA), Spring, Infinispan, Camel e molte altre.

L'inserimento della dipendenza di Quarkus si basa su CDI (Contexts and Dependency Injection) e include un framework di estensione per ampliare le funzionalità e configurare, avviare e integrare un framework nell'applicazione. L'aggiunta di un'estensione è facile come quella di una dipendenza, ma in alternativa è possibile utilizzare gli strumenti di Quarkus.

La soluzione fornisce le informazioni corrette a GraalVM (una macchina virtuale universale che esegue app scritte in numerosi linguaggi, inclusi Java e JavaScript) per la compilazione nativa della tua applicazione.

 

Quattro motivi per provare Quarkus

Java™ è tuttora il linguaggio di programmazione scelto per molti sviluppatori, ma l'evoluzione delle tecnologie cloud native come Kubernetes e il serverless computing pone nuove sfide. Scopri perché Quarkus è il framework Java indispensabile agli sviluppatori per operare con Knative e il serverless computing.

Quarkus è altamente intuitivo, grazie a funzionalità che richiedono scarsa configurazione o non ne richiedono affatto.

Gli sviluppatori possono scegliere i framework Java che preferiscono per le proprie applicazioni, che possono essere eseguite in modalità JVM oppure compilate ed eseguite in modalità nativa.

Pensato per essere apprezzato dagli sviluppatori, Quarkus include anche le seguenti funzionalità:

  • Codifica in tempo reale, per controllare subito gli effetti delle modifiche apportate al codice e risolvere rapidamente i problemi
  • Programmazione imperativa e reattiva unificata, con un bus eventi gestito integrato
  • Configurazione unificata
  • Generazione semplificata di eseguibili nativi

Che sia ospitata su un cloud pubblico o in un cluster Kubernetes su hosting interno, alcune caratteristiche di un'applicazione, come l'avvio rapido e il consumo di memoria ridotto, contribuiscono a contenere i costi complessivi di hosting.

La filosofia su cui si fonda Quarkus mette i container al primo posto; ciò significa che la soluzione è ottimizzata per un ridotto consumo di memoria e per tempi di avvio rapido grazie a:

  • Supporto di alta qualità per Graal/SubstrateVM
  • Elaborazione dei metadati in fase di compilazione
  • Minor utilizzo della reflection
  • Preavvio dell'immagine nativa

Quarkus consente di creare applicazioni che consumano 1/10 della memoria rispetto al tradizionale Java, con tempi di avvio fino a 300 volte più rapidi, entrambi aspetti che riducono notevolmente il costo delle risorse cloud.

Nello sviluppo delle applicazioni, Quarkus è progettato per combinare il codice in stile imperativo noto e quello in stile reattivo, non bloccante.

In questo modo, il prodotto viene incontro sia agli sviluppatori Java abituati a utilizzare il modello imperativo e poco propensi al cambiamento, sia a quelli che lavorano con un approccio cloud native/reattivo.

Il modello di sviluppo di Quarkus è adattabile a qualsiasi app si stia sviluppando.

Quarkus è una soluzione efficace per eseguire Java nel nuovo contesto di architettura serverless, microservizi, container, Kubernetes, Function-as-a-Service (FaaS) e cloud, perché è stata progettata proprio tenendo a mente queste esigenze.

Keep reading

ARTICOLO

Stateful e stateless

La condizione di stateful o stateless di un elemento dipende dalla durata della registrazione dell'interazione con l'elemento stesso e dalle modalità di memorizzazione di questa informazione.

ARTICOLO

Cos'è Quarkus?

Quarkus è uno stack Java Kubernetes native realizzato per le macchine virtuali Java (JVM) e per la compilazione nativa, che ottimizza Java specificamente per i container.

ARTICOLO

Cos'è il serverless computing?

Il serverless computing è un modello di sviluppo cloud native che consente agli sviluppatori di creare ed eseguire applicazioni senza gestire i server.

Scopri di più sulle applicazioni cloud native

Prodotti

Una piattaforma applicativa aziendale che offre servizi verificati per consentire la distribuzione delle app sulle infrastrutture preferite.

Risorse

White paper

Panoramica di Red Hat sullo sviluppo cloud native

Ebook

Il percorso verso le applicazioni cloud native

EBOOK

Cloud native e cloud ibrido: come definire la tua strategia.

Formazione

Formazione gratuita

Developing Cloud-Native Applications with Microservices Architectures