Empowering Your Java Applications with Quarkus. A New Era of Fast, Efficient, and Cloud-Native Development.pdf

Empowering Your Java
Applications with
Quarkus: A New Era of
Fast, Efficient, and
Cloud-Native
Development
Ivelin Yanev
Agenda
1. Understanding Quarkus
2. Java EE Compatibility
3. Why Quarkus?
4. Quarkus - The real advantages
5. Demo
6. Q&A Session
Understanding Quarkus
Supersonic, Subatomic Java
The idea behind supersonic is speed.
The idea behind the word subatomic is the size.
https://quarkus.io
Understanding Quarkus
Quarkus has been designed around a container-first philosophy.
Traditional framework startup steps!
Understanding Quarkus
Quarkus has been designed around a container-first philosophy.
The Quarkus startup way!
Understanding Quarkus
Build cloud native applications
“The native executables start up almost 100X faster and consume up to 5X less memory compared to
running on a JVM” - Oracle
https://www.oracle.com/ph/java/graalvm
Understanding Quarkus
Mandrel: A specialized distribution of GraalVM for Quarkus
https://quarkus.io
● Red Hat contributes to GraalVM
● Quarkus is part of the GraalVM test suite
● Mandrel is downstream distribution of GraalVM
Java EE Compatibility
What is Jakarta EE?
https://jakarta.ee
● Jakarta EE (formerly Java EE) is a set of
specifications and APIs for building enterprise
Java applications
● It provides a standardized platform for building
large-scale, distributed, and robust enterprise
applications
● Jakarta EE fosters collaboration within the
Java community by bringing together industry
experts and developers to define and maintain
a comprehensive set of APIs
Java EE Compatibility
What is Microprofile?
https://jakarta.ee
● MicroProfile is a set of specifications and APIs
specifically designed to enhance Jakarta EE
for building microservices and cloud-native
applications
● Offers a lightweight approach to building
microservices with APIs for features like
health checks, metrics, fault tolerance, and
configuration
● Quarkus is a MicroProfile implementation that
focuses on efficiently running Java applications in
containers in general and Kubernetes in particular.
Quarkus Ecosystem
Quarkus architecture
Quarkus Ecosystem
Extensions
deployment runtime
bytecode
Framework
and
Build time augmentation
TOOLKIT
Key aspects of Quarkus extensions philosophy:
● Modularity: Extensions are designed to be self-contained units
of functionality
● Simplicity: Quarkus extensions aim to simplify the integration
of third-party libraries and technologies
● Configuration: Extensions often provide well-defined
configuration options that align with Quarkus' overall
configuration model
● Optimization: Extensions focused on optimization offer a
diverse range of benefits that elevate performance through the
utilization of recording bytecode
Why Quarkus?
Based on standart
● Jakarta EE and MicroProfile
○ MicroProfile Config
○ MicroProfile Health
○ MicroProfile Metrics
○ MicroProfile REST Client
○ Jakarta RESTful Web Services
○ Jakarta Persistence
○ ……… etc.
● Dependency Injection Standards
○ Jakarta Contexts and Dependency Injection(CDI)
● Reactive Programming Standards:
● OpenTelemetry
Why Quarkus?
Developer by productivity
● Dev Mode / Live Coding;
Write Code → Refresh Browser → Repeat
● Dev services;
● Dev UI;
● Continuous Testing.
Why Quarkus?
Quarkiverse Hub
“An extension in the context of Quarkus is a modular
component that enhances the framework's functionality by
providing pre-packaged features, libraries, or integrations for
use in Quarkus applications.”
622+
Extensions
Quarkus - The real advantages
Performance Comparison
1. Startup Time Comparison
2. Memory Usage Comparison
https://github.com/oktadev/auth0-java-rest-api-examples
➢ Quarkus performs significantly better in
resource-constrained environments, making it
suitable for containerized environments and
resource-constrained scenarios.
➢ Quarkus is designed for ultra-fast startup
times, typically measured in milliseconds. This
is crucial for serverless and microservices
architectures where rapid scaling is essential.
Quarkus - The real advantages
Performance Comparison
3. JSON serialization
4. Single query
https://www.techempower.com/benchmarks
Quarkus - The real advantages
Performance Comparison
3. Data updates
4. Plaintext
https://www.techempower.com/benchmarks
Quarkus - The real advantages
Performance stands as the valuable currency of developers
Gathered metrics spanning a 3-year
duration from @LogicDrop
● Spending less time on optimization means having more
time to focus on developing your business logic;
● Quarkus' efficient memory utilization and smaller footprint
mean developers can work with less powerful hardware
without sacrificing development speed. This can lead to
cost savings and a more flexible development
environment;
● Developers adhering to specific MicroProfile
specifications save time by quickly understanding
potential problem.
DEMO
1 sur 19

Recommandé

D. Andreadis, Red Hat: Concepts and technical overview of Quarkus par
D. Andreadis, Red Hat: Concepts and technical overview of QuarkusD. Andreadis, Red Hat: Concepts and technical overview of Quarkus
D. Andreadis, Red Hat: Concepts and technical overview of QuarkusUni Systems S.M.S.A.
346 vues30 diapositives
Building flexible ETL pipelines with Apache Camel on Quarkus par
Building flexible ETL pipelines with Apache Camel on QuarkusBuilding flexible ETL pipelines with Apache Camel on Quarkus
Building flexible ETL pipelines with Apache Camel on QuarkusIvelin Yanev
395 vues14 diapositives
Discover Quarkus and GraalVM par
Discover Quarkus and GraalVMDiscover Quarkus and GraalVM
Discover Quarkus and GraalVMRomain Schlick
638 vues19 diapositives
Performance Engineering Masterclass: Introduction to Modern Performance par
Performance Engineering Masterclass: Introduction to Modern PerformancePerformance Engineering Masterclass: Introduction to Modern Performance
Performance Engineering Masterclass: Introduction to Modern PerformanceScyllaDB
117 vues18 diapositives
Kafka At Scale in the Cloud par
Kafka At Scale in the CloudKafka At Scale in the Cloud
Kafka At Scale in the Cloudconfluent
11.2K vues43 diapositives
Cloud Native Java GraalVM 이상과 현실 par
Cloud Native Java GraalVM 이상과 현실Cloud Native Java GraalVM 이상과 현실
Cloud Native Java GraalVM 이상과 현실Taewan Kim
3.5K vues88 diapositives

Contenu connexe

Tendances

Quarkus k8s par
Quarkus   k8sQuarkus   k8s
Quarkus k8sGeorgios Andrianakis
728 vues28 diapositives
Integrating systems in the age of Quarkus and Camel par
Integrating systems in the age of Quarkus and CamelIntegrating systems in the age of Quarkus and Camel
Integrating systems in the age of Quarkus and CamelClaus Ibsen
565 vues54 diapositives
Multi-Cluster and Failover for Apache Kafka - Kafka Summit SF 17 par
Multi-Cluster and Failover for Apache Kafka - Kafka Summit SF 17Multi-Cluster and Failover for Apache Kafka - Kafka Summit SF 17
Multi-Cluster and Failover for Apache Kafka - Kafka Summit SF 17Gwen (Chen) Shapira
9.6K vues33 diapositives
Quarkus Denmark 2019 par
Quarkus Denmark 2019Quarkus Denmark 2019
Quarkus Denmark 2019Max Andersen
606 vues44 diapositives
Quarkus tips, tricks, and techniques par
Quarkus tips, tricks, and techniquesQuarkus tips, tricks, and techniques
Quarkus tips, tricks, and techniquesRed Hat Developers
1.3K vues21 diapositives
Reactive stream processing using Akka streams par
Reactive stream processing using Akka streams Reactive stream processing using Akka streams
Reactive stream processing using Akka streams Johan Andrén
1.1K vues69 diapositives

Tendances(20)

Integrating systems in the age of Quarkus and Camel par Claus Ibsen
Integrating systems in the age of Quarkus and CamelIntegrating systems in the age of Quarkus and Camel
Integrating systems in the age of Quarkus and Camel
Claus Ibsen565 vues
Multi-Cluster and Failover for Apache Kafka - Kafka Summit SF 17 par Gwen (Chen) Shapira
Multi-Cluster and Failover for Apache Kafka - Kafka Summit SF 17Multi-Cluster and Failover for Apache Kafka - Kafka Summit SF 17
Multi-Cluster and Failover for Apache Kafka - Kafka Summit SF 17
Reactive stream processing using Akka streams par Johan Andrén
Reactive stream processing using Akka streams Reactive stream processing using Akka streams
Reactive stream processing using Akka streams
Johan Andrén1.1K vues
Streaming Millions of Contact Center Interactions in (Near) Real-Time with Pu... par StreamNative
Streaming Millions of Contact Center Interactions in (Near) Real-Time with Pu...Streaming Millions of Contact Center Interactions in (Near) Real-Time with Pu...
Streaming Millions of Contact Center Interactions in (Near) Real-Time with Pu...
StreamNative208 vues
Apache Pulsar with MQTT for Edge Computing - Pulsar Summit Asia 2021 par StreamNative
Apache Pulsar with MQTT for Edge Computing - Pulsar Summit Asia 2021Apache Pulsar with MQTT for Edge Computing - Pulsar Summit Asia 2021
Apache Pulsar with MQTT for Edge Computing - Pulsar Summit Asia 2021
StreamNative124 vues
Service Mesh with Apache Kafka, Kubernetes, Envoy, Istio and Linkerd par Kai Wähner
Service Mesh with Apache Kafka, Kubernetes, Envoy, Istio and LinkerdService Mesh with Apache Kafka, Kubernetes, Envoy, Istio and Linkerd
Service Mesh with Apache Kafka, Kubernetes, Envoy, Istio and Linkerd
Kai Wähner25.1K vues
Introduction to Kafka connect par Knoldus Inc.
Introduction to Kafka connectIntroduction to Kafka connect
Introduction to Kafka connect
Knoldus Inc.5.7K vues
WebSphere application server 8.5.5 - quick overview par Chris Sparshott
WebSphere application server 8.5.5 - quick overviewWebSphere application server 8.5.5 - quick overview
WebSphere application server 8.5.5 - quick overview
Chris Sparshott3.8K vues
Disaster Recovery with MirrorMaker 2.0 (Ryanne Dolan, Cloudera) Kafka Summit ... par confluent
Disaster Recovery with MirrorMaker 2.0 (Ryanne Dolan, Cloudera) Kafka Summit ...Disaster Recovery with MirrorMaker 2.0 (Ryanne Dolan, Cloudera) Kafka Summit ...
Disaster Recovery with MirrorMaker 2.0 (Ryanne Dolan, Cloudera) Kafka Summit ...
confluent12.1K vues
Apache BookKeeper: A High Performance and Low Latency Storage Service par Sijie Guo
Apache BookKeeper: A High Performance and Low Latency Storage ServiceApache BookKeeper: A High Performance and Low Latency Storage Service
Apache BookKeeper: A High Performance and Low Latency Storage Service
Sijie Guo5.9K vues
Domain Driven Design and Hexagonal Architecture with Rails par Declan Whelan
Domain Driven Design and Hexagonal Architecture with RailsDomain Driven Design and Hexagonal Architecture with Rails
Domain Driven Design and Hexagonal Architecture with Rails
Declan Whelan8.7K vues
Etl is Dead; Long Live Streams par confluent
Etl is Dead; Long Live StreamsEtl is Dead; Long Live Streams
Etl is Dead; Long Live Streams
confluent4.2K vues
Hello, kafka! (an introduction to apache kafka) par Timothy Spann
Hello, kafka! (an introduction to apache kafka)Hello, kafka! (an introduction to apache kafka)
Hello, kafka! (an introduction to apache kafka)
Timothy Spann321 vues

Similaire à Empowering Your Java Applications with Quarkus. A New Era of Fast, Efficient, and Cloud-Native Development.pdf

Quarkus - a next-generation Kubernetes Native Java framework par
Quarkus - a next-generation Kubernetes Native Java frameworkQuarkus - a next-generation Kubernetes Native Java framework
Quarkus - a next-generation Kubernetes Native Java frameworkSVDevOps
606 vues42 diapositives
Top 10 Kubernetes Native Java Quarkus Features par
Top 10 Kubernetes Native Java Quarkus FeaturesTop 10 Kubernetes Native Java Quarkus Features
Top 10 Kubernetes Native Java Quarkus Featuresjclingan
50 vues19 diapositives
Integrating ScyllaDB with Quarkus par
Integrating ScyllaDB with QuarkusIntegrating ScyllaDB with Quarkus
Integrating ScyllaDB with QuarkusScyllaDB
810 vues13 diapositives
Exploring Quarkus on JDK 17 par
Exploring Quarkus on JDK 17Exploring Quarkus on JDK 17
Exploring Quarkus on JDK 17Ana-Maria Mihalceanu
215 vues20 diapositives
NetApp Datasheet Oracle Accelerator par
NetApp Datasheet Oracle AcceleratorNetApp Datasheet Oracle Accelerator
NetApp Datasheet Oracle AcceleratorContent Rules, Inc.
382 vues4 diapositives
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c par
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12cDeveloping Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12cBruno Borges
57K vues38 diapositives

Similaire à Empowering Your Java Applications with Quarkus. A New Era of Fast, Efficient, and Cloud-Native Development.pdf(20)

Quarkus - a next-generation Kubernetes Native Java framework par SVDevOps
Quarkus - a next-generation Kubernetes Native Java frameworkQuarkus - a next-generation Kubernetes Native Java framework
Quarkus - a next-generation Kubernetes Native Java framework
SVDevOps606 vues
Top 10 Kubernetes Native Java Quarkus Features par jclingan
Top 10 Kubernetes Native Java Quarkus FeaturesTop 10 Kubernetes Native Java Quarkus Features
Top 10 Kubernetes Native Java Quarkus Features
jclingan50 vues
Integrating ScyllaDB with Quarkus par ScyllaDB
Integrating ScyllaDB with QuarkusIntegrating ScyllaDB with Quarkus
Integrating ScyllaDB with Quarkus
ScyllaDB810 vues
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c par Bruno Borges
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12cDeveloping Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c
Bruno Borges57K vues
Oracle Coherence Strategy and Roadmap (OpenWorld, September 2014) par jeckels
Oracle Coherence Strategy and Roadmap (OpenWorld, September 2014)Oracle Coherence Strategy and Roadmap (OpenWorld, September 2014)
Oracle Coherence Strategy and Roadmap (OpenWorld, September 2014)
jeckels3.9K vues
Reactive Amsterdam - Maxim Burgerhout - Quarkus Intro par Fabio Tiriticco
Reactive Amsterdam - Maxim Burgerhout - Quarkus IntroReactive Amsterdam - Maxim Burgerhout - Quarkus Intro
Reactive Amsterdam - Maxim Burgerhout - Quarkus Intro
Fabio Tiriticco955 vues
Java in a world of containers par Docker, Inc.
Java in a world of containersJava in a world of containers
Java in a world of containers
Docker, Inc.1.7K vues
Java in a World of Containers - DockerCon 2018 par Arun Gupta
Java in a World of Containers - DockerCon 2018Java in a World of Containers - DockerCon 2018
Java in a World of Containers - DockerCon 2018
Arun Gupta2.3K vues
Performance of Microservice frameworks on different JVMs par Maarten Smeets
Performance of Microservice frameworks on different JVMsPerformance of Microservice frameworks on different JVMs
Performance of Microservice frameworks on different JVMs
Maarten Smeets3.9K vues
Java EE Arquillian Testing with Docker & The Cloud par Bruno Borges
Java EE Arquillian Testing with Docker & The CloudJava EE Arquillian Testing with Docker & The Cloud
Java EE Arquillian Testing with Docker & The Cloud
Bruno Borges3.3K vues
OpenNebulaConf 2014 - Cloud Automation for OpenNebula - Kishorekumar Neelamegam par OpenNebula Project
OpenNebulaConf 2014 - Cloud Automation for OpenNebula - Kishorekumar NeelamegamOpenNebulaConf 2014 - Cloud Automation for OpenNebula - Kishorekumar Neelamegam
OpenNebulaConf 2014 - Cloud Automation for OpenNebula - Kishorekumar Neelamegam
OpenNebula Conf 2014 | Cloud Automation for OpenNebula by Kishorekumar Neelam... par NETWAYS
OpenNebula Conf 2014 | Cloud Automation for OpenNebula by Kishorekumar Neelam...OpenNebula Conf 2014 | Cloud Automation for OpenNebula by Kishorekumar Neelam...
OpenNebula Conf 2014 | Cloud Automation for OpenNebula by Kishorekumar Neelam...
NETWAYS1.2K vues
Cloud Native Dünyada CI/CD par Mustafa AKIN
Cloud Native Dünyada CI/CDCloud Native Dünyada CI/CD
Cloud Native Dünyada CI/CD
Mustafa AKIN354 vues
Real World Enterprise Reactive Programming using Vert.x par Mariam Hakobyan
Real World Enterprise Reactive Programming using Vert.xReal World Enterprise Reactive Programming using Vert.x
Real World Enterprise Reactive Programming using Vert.x
Mariam Hakobyan5.9K vues
Real World Enterprise Reactive Programming using Vert.x par Sascha Möllering
Real World Enterprise Reactive Programming using Vert.xReal World Enterprise Reactive Programming using Vert.x
Real World Enterprise Reactive Programming using Vert.x
Sascha Möllering2.4K vues
A High-Speed Data Ingestion Service in Java Using MQTT, AMQP, and STOMP.pdf par Juarez Junior
A High-Speed Data Ingestion Service in Java Using MQTT, AMQP, and STOMP.pdfA High-Speed Data Ingestion Service in Java Using MQTT, AMQP, and STOMP.pdf
A High-Speed Data Ingestion Service in Java Using MQTT, AMQP, and STOMP.pdf
Juarez Junior17 vues

Plus de Ivelin Yanev

Project Loom par
Project LoomProject Loom
Project LoomIvelin Yanev
64 vues14 diapositives
Git collaboration par
Git collaborationGit collaboration
Git collaborationIvelin Yanev
59 vues44 diapositives
Java exeptions par
Java exeptionsJava exeptions
Java exeptionsIvelin Yanev
63 vues11 diapositives
Introducing java oop concepts par
Introducing java oop conceptsIntroducing java oop concepts
Introducing java oop conceptsIvelin Yanev
69 vues16 diapositives
Introducing generic types par
Introducing generic typesIntroducing generic types
Introducing generic typesIvelin Yanev
42 vues13 diapositives
Java features. Java 8, 9, 10, 11 par
Java features. Java 8, 9, 10, 11Java features. Java 8, 9, 10, 11
Java features. Java 8, 9, 10, 11Ivelin Yanev
115 vues22 diapositives

Plus de Ivelin Yanev(9)

Dernier

SUGCON ANZ Presentation V2.1 Final.pptx par
SUGCON ANZ Presentation V2.1 Final.pptxSUGCON ANZ Presentation V2.1 Final.pptx
SUGCON ANZ Presentation V2.1 Final.pptxJack Spektor
22 vues34 diapositives
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI... par
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...Marc Müller
36 vues83 diapositives
A first look at MariaDB 11.x features and ideas on how to use them par
A first look at MariaDB 11.x features and ideas on how to use themA first look at MariaDB 11.x features and ideas on how to use them
A first look at MariaDB 11.x features and ideas on how to use themFederico Razzoli
45 vues36 diapositives
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ... par
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...Donato Onofri
711 vues34 diapositives
DSD-INT 2023 Leveraging the results of a 3D hydrodynamic model to improve the... par
DSD-INT 2023 Leveraging the results of a 3D hydrodynamic model to improve the...DSD-INT 2023 Leveraging the results of a 3D hydrodynamic model to improve the...
DSD-INT 2023 Leveraging the results of a 3D hydrodynamic model to improve the...Deltares
6 vues22 diapositives
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra... par
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra....NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...Marc Müller
38 vues62 diapositives

Dernier(20)

SUGCON ANZ Presentation V2.1 Final.pptx par Jack Spektor
SUGCON ANZ Presentation V2.1 Final.pptxSUGCON ANZ Presentation V2.1 Final.pptx
SUGCON ANZ Presentation V2.1 Final.pptx
Jack Spektor22 vues
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI... par Marc Müller
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...
Marc Müller36 vues
A first look at MariaDB 11.x features and ideas on how to use them par Federico Razzoli
A first look at MariaDB 11.x features and ideas on how to use themA first look at MariaDB 11.x features and ideas on how to use them
A first look at MariaDB 11.x features and ideas on how to use them
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ... par Donato Onofri
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...
Donato Onofri711 vues
DSD-INT 2023 Leveraging the results of a 3D hydrodynamic model to improve the... par Deltares
DSD-INT 2023 Leveraging the results of a 3D hydrodynamic model to improve the...DSD-INT 2023 Leveraging the results of a 3D hydrodynamic model to improve the...
DSD-INT 2023 Leveraging the results of a 3D hydrodynamic model to improve the...
Deltares6 vues
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra... par Marc Müller
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra....NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
Marc Müller38 vues
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ... par Deltares
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...
Deltares9 vues
DSD-INT 2023 FloodAdapt - A decision-support tool for compound flood risk mit... par Deltares
DSD-INT 2023 FloodAdapt - A decision-support tool for compound flood risk mit...DSD-INT 2023 FloodAdapt - A decision-support tool for compound flood risk mit...
DSD-INT 2023 FloodAdapt - A decision-support tool for compound flood risk mit...
Deltares13 vues
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx par animuscrm
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
animuscrm13 vues
DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -... par Deltares
DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -...DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -...
DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -...
Deltares6 vues
Neo4j y GenAI par Neo4j
Neo4j y GenAI Neo4j y GenAI
Neo4j y GenAI
Neo4j42 vues
Copilot Prompting Toolkit_All Resources.pdf par Riccardo Zamana
Copilot Prompting Toolkit_All Resources.pdfCopilot Prompting Toolkit_All Resources.pdf
Copilot Prompting Toolkit_All Resources.pdf
What Can Employee Monitoring Software Do?​ par wAnywhere
What Can Employee Monitoring Software Do?​What Can Employee Monitoring Software Do?​
What Can Employee Monitoring Software Do?​
wAnywhere21 vues
Citi TechTalk Session 2: Kafka Deep Dive par confluent
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Dive
confluent17 vues
Elevate your SAP landscape's efficiency and performance with HCL Workload Aut... par HCLSoftware
Elevate your SAP landscape's efficiency and performance with HCL Workload Aut...Elevate your SAP landscape's efficiency and performance with HCL Workload Aut...
Elevate your SAP landscape's efficiency and performance with HCL Workload Aut...
HCLSoftware6 vues
El Arte de lo Possible par Neo4j
El Arte de lo PossibleEl Arte de lo Possible
El Arte de lo Possible
Neo4j38 vues
Software testing company in India.pptx par SakshiPatel82
Software testing company in India.pptxSoftware testing company in India.pptx
Software testing company in India.pptx
SakshiPatel827 vues

Empowering Your Java Applications with Quarkus. A New Era of Fast, Efficient, and Cloud-Native Development.pdf

  • 1. Empowering Your Java Applications with Quarkus: A New Era of Fast, Efficient, and Cloud-Native Development Ivelin Yanev
  • 2. Agenda 1. Understanding Quarkus 2. Java EE Compatibility 3. Why Quarkus? 4. Quarkus - The real advantages 5. Demo 6. Q&A Session
  • 3. Understanding Quarkus Supersonic, Subatomic Java The idea behind supersonic is speed. The idea behind the word subatomic is the size. https://quarkus.io
  • 4. Understanding Quarkus Quarkus has been designed around a container-first philosophy. Traditional framework startup steps!
  • 5. Understanding Quarkus Quarkus has been designed around a container-first philosophy. The Quarkus startup way!
  • 6. Understanding Quarkus Build cloud native applications “The native executables start up almost 100X faster and consume up to 5X less memory compared to running on a JVM” - Oracle https://www.oracle.com/ph/java/graalvm
  • 7. Understanding Quarkus Mandrel: A specialized distribution of GraalVM for Quarkus https://quarkus.io ● Red Hat contributes to GraalVM ● Quarkus is part of the GraalVM test suite ● Mandrel is downstream distribution of GraalVM
  • 8. Java EE Compatibility What is Jakarta EE? https://jakarta.ee ● Jakarta EE (formerly Java EE) is a set of specifications and APIs for building enterprise Java applications ● It provides a standardized platform for building large-scale, distributed, and robust enterprise applications ● Jakarta EE fosters collaboration within the Java community by bringing together industry experts and developers to define and maintain a comprehensive set of APIs
  • 9. Java EE Compatibility What is Microprofile? https://jakarta.ee ● MicroProfile is a set of specifications and APIs specifically designed to enhance Jakarta EE for building microservices and cloud-native applications ● Offers a lightweight approach to building microservices with APIs for features like health checks, metrics, fault tolerance, and configuration ● Quarkus is a MicroProfile implementation that focuses on efficiently running Java applications in containers in general and Kubernetes in particular.
  • 11. Quarkus Ecosystem Extensions deployment runtime bytecode Framework and Build time augmentation TOOLKIT Key aspects of Quarkus extensions philosophy: ● Modularity: Extensions are designed to be self-contained units of functionality ● Simplicity: Quarkus extensions aim to simplify the integration of third-party libraries and technologies ● Configuration: Extensions often provide well-defined configuration options that align with Quarkus' overall configuration model ● Optimization: Extensions focused on optimization offer a diverse range of benefits that elevate performance through the utilization of recording bytecode
  • 12. Why Quarkus? Based on standart ● Jakarta EE and MicroProfile ○ MicroProfile Config ○ MicroProfile Health ○ MicroProfile Metrics ○ MicroProfile REST Client ○ Jakarta RESTful Web Services ○ Jakarta Persistence ○ ……… etc. ● Dependency Injection Standards ○ Jakarta Contexts and Dependency Injection(CDI) ● Reactive Programming Standards: ● OpenTelemetry
  • 13. Why Quarkus? Developer by productivity ● Dev Mode / Live Coding; Write Code → Refresh Browser → Repeat ● Dev services; ● Dev UI; ● Continuous Testing.
  • 14. Why Quarkus? Quarkiverse Hub “An extension in the context of Quarkus is a modular component that enhances the framework's functionality by providing pre-packaged features, libraries, or integrations for use in Quarkus applications.” 622+ Extensions
  • 15. Quarkus - The real advantages Performance Comparison 1. Startup Time Comparison 2. Memory Usage Comparison https://github.com/oktadev/auth0-java-rest-api-examples ➢ Quarkus performs significantly better in resource-constrained environments, making it suitable for containerized environments and resource-constrained scenarios. ➢ Quarkus is designed for ultra-fast startup times, typically measured in milliseconds. This is crucial for serverless and microservices architectures where rapid scaling is essential.
  • 16. Quarkus - The real advantages Performance Comparison 3. JSON serialization 4. Single query https://www.techempower.com/benchmarks
  • 17. Quarkus - The real advantages Performance Comparison 3. Data updates 4. Plaintext https://www.techempower.com/benchmarks
  • 18. Quarkus - The real advantages Performance stands as the valuable currency of developers Gathered metrics spanning a 3-year duration from @LogicDrop ● Spending less time on optimization means having more time to focus on developing your business logic; ● Quarkus' efficient memory utilization and smaller footprint mean developers can work with less powerful hardware without sacrificing development speed. This can lead to cost savings and a more flexible development environment; ● Developers adhering to specific MicroProfile specifications save time by quickly understanding potential problem.
  • 19. DEMO