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 of 19

Recommended

Quarkus - a next-generation Kubernetes Native Java framework by
Quarkus - a next-generation Kubernetes Native Java frameworkQuarkus - a next-generation Kubernetes Native Java framework
Quarkus - a next-generation Kubernetes Native Java frameworkSVDevOps
611 views42 slides
Devoxx France 2023 - 1,2,3 Quarkus.pdf by
Devoxx France 2023 - 1,2,3 Quarkus.pdfDevoxx France 2023 - 1,2,3 Quarkus.pdf
Devoxx France 2023 - 1,2,3 Quarkus.pdfClément Escoffier
100 views18 slides
D. Andreadis, Red Hat: Concepts and technical overview of Quarkus by
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 views30 slides
Quarkus k8s by
Quarkus   k8sQuarkus   k8s
Quarkus k8sGeorgios Andrianakis
733 views28 slides
Quarkus tips, tricks, and techniques by
Quarkus tips, tricks, and techniquesQuarkus tips, tricks, and techniques
Quarkus tips, tricks, and techniquesRed Hat Developers
1.3K views21 slides
Red Hat Java Update and Quarkus Introduction by
Red Hat Java Update and Quarkus IntroductionRed Hat Java Update and Quarkus Introduction
Red Hat Java Update and Quarkus IntroductionJohn Archer
687 views41 slides

More Related Content

What's hot

Kyma: Extending Business systems with Kubernetes, Istio and <fill the blank>. by
Kyma: Extending Business systems with Kubernetes, Istio and <fill the blank>.Kyma: Extending Business systems with Kubernetes, Istio and <fill the blank>.
Kyma: Extending Business systems with Kubernetes, Istio and <fill the blank>.SAP HANA Cloud Platform
315 views52 slides
Kubernetes Problem-Solving by
Kubernetes Problem-SolvingKubernetes Problem-Solving
Kubernetes Problem-SolvingAll Things Open
122 views54 slides
CI/CD Tools Universe: The Ultimate List by
CI/CD Tools Universe: The Ultimate ListCI/CD Tools Universe: The Ultimate List
CI/CD Tools Universe: The Ultimate ListPlutora
203 views60 slides
Kubernetes by
KubernetesKubernetes
Kuberneteserialc_w
3K views19 slides
Docker Kubernetes Istio by
Docker Kubernetes IstioDocker Kubernetes Istio
Docker Kubernetes IstioAraf Karsh Hamid
3.7K views129 slides
Opentelemetry - From frontend to backend by
Opentelemetry - From frontend to backendOpentelemetry - From frontend to backend
Opentelemetry - From frontend to backendSebastian Poxhofer
382 views29 slides

What's hot(20)

Kyma: Extending Business systems with Kubernetes, Istio and <fill the blank>. by SAP HANA Cloud Platform
Kyma: Extending Business systems with Kubernetes, Istio and <fill the blank>.Kyma: Extending Business systems with Kubernetes, Istio and <fill the blank>.
Kyma: Extending Business systems with Kubernetes, Istio and <fill the blank>.
CI/CD Tools Universe: The Ultimate List by Plutora
CI/CD Tools Universe: The Ultimate ListCI/CD Tools Universe: The Ultimate List
CI/CD Tools Universe: The Ultimate List
Plutora203 views
Kubernetes by erialc_w
KubernetesKubernetes
Kubernetes
erialc_w3K views
Containers Anywhere with OpenShift by Red Hat by Amazon Web Services
Containers Anywhere with OpenShift by Red HatContainers Anywhere with OpenShift by Red Hat
Containers Anywhere with OpenShift by Red Hat
Amazon Web Services9.3K views
Hands-On Introduction to Kubernetes at LISA17 by Ryan Jarvinen
Hands-On Introduction to Kubernetes at LISA17Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17
Ryan Jarvinen1.1K views
OPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy by Natale Vinto
OPENSHIFT CONTAINER PLATFORM CI/CD Build & DeployOPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
OPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
Natale Vinto9.3K views
Multi cluster management with rancher by Kyohei Mizumoto
Multi cluster management with rancherMulti cluster management with rancher
Multi cluster management with rancher
Kyohei Mizumoto224 views
Quarkus Denmark 2019 by Max Andersen
Quarkus Denmark 2019Quarkus Denmark 2019
Quarkus Denmark 2019
Max Andersen606 views
Infrastructure-as-Code with Pulumi - Better than all the others (like Ansible)? by Jonas Hecht
Infrastructure-as-Code with Pulumi- Better than all the others (like Ansible)?Infrastructure-as-Code with Pulumi- Better than all the others (like Ansible)?
Infrastructure-as-Code with Pulumi - Better than all the others (like Ansible)?
Jonas Hecht1.8K views
Why kubernetes matters by Platform9
Why kubernetes mattersWhy kubernetes matters
Why kubernetes matters
Platform93K views
Designing a complete ci cd pipeline using argo events, workflow and cd products by Julian Mazzitelli
Designing a complete ci cd pipeline using argo events, workflow and cd productsDesigning a complete ci cd pipeline using argo events, workflow and cd products
Designing a complete ci cd pipeline using argo events, workflow and cd products
Julian Mazzitelli11.5K views
Red Hat Openshift Fundamentals.pptx by ssuser18b1c6
Red Hat Openshift Fundamentals.pptxRed Hat Openshift Fundamentals.pptx
Red Hat Openshift Fundamentals.pptx
ssuser18b1c675 views
Continuous Lifecycle London 2018 Event Keynote by Weaveworks
Continuous Lifecycle London 2018 Event KeynoteContinuous Lifecycle London 2018 Event Keynote
Continuous Lifecycle London 2018 Event Keynote
Weaveworks4.1K views

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

Top 10 Kubernetes Native Java Quarkus Features by
Top 10 Kubernetes Native Java Quarkus FeaturesTop 10 Kubernetes Native Java Quarkus Features
Top 10 Kubernetes Native Java Quarkus Featuresjclingan
51 views19 slides
Integrating ScyllaDB with Quarkus by
Integrating ScyllaDB with QuarkusIntegrating ScyllaDB with Quarkus
Integrating ScyllaDB with QuarkusScyllaDB
821 views13 slides
Exploring Quarkus on JDK 17 by
Exploring Quarkus on JDK 17Exploring Quarkus on JDK 17
Exploring Quarkus on JDK 17Ana-Maria Mihalceanu
215 views20 slides
NetApp Datasheet Oracle Accelerator by
NetApp Datasheet Oracle AcceleratorNetApp Datasheet Oracle Accelerator
NetApp Datasheet Oracle AcceleratorContent Rules, Inc.
382 views4 slides
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c by
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 views38 slides
Oracle Coherence Strategy and Roadmap (OpenWorld, September 2014) by
Oracle Coherence Strategy and Roadmap (OpenWorld, September 2014)Oracle Coherence Strategy and Roadmap (OpenWorld, September 2014)
Oracle Coherence Strategy and Roadmap (OpenWorld, September 2014)jeckels
3.9K views33 slides

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

Top 10 Kubernetes Native Java Quarkus Features by jclingan
Top 10 Kubernetes Native Java Quarkus FeaturesTop 10 Kubernetes Native Java Quarkus Features
Top 10 Kubernetes Native Java Quarkus Features
jclingan51 views
Integrating ScyllaDB with Quarkus by ScyllaDB
Integrating ScyllaDB with QuarkusIntegrating ScyllaDB with Quarkus
Integrating ScyllaDB with Quarkus
ScyllaDB821 views
Developing Java EE Applications on IntelliJ IDEA with Oracle WebLogic 12c by 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 views
Oracle Coherence Strategy and Roadmap (OpenWorld, September 2014) by 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 views
Reactive Amsterdam - Maxim Burgerhout - Quarkus Intro by Fabio Tiriticco
Reactive Amsterdam - Maxim Burgerhout - Quarkus IntroReactive Amsterdam - Maxim Burgerhout - Quarkus Intro
Reactive Amsterdam - Maxim Burgerhout - Quarkus Intro
Fabio Tiriticco955 views
Java in a world of containers by Docker, Inc.
Java in a world of containersJava in a world of containers
Java in a world of containers
Docker, Inc.1.7K views
Java in a World of Containers - DockerCon 2018 by 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 views
Performance of Microservice frameworks on different JVMs by 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 views
Java EE Arquillian Testing with Docker & The Cloud by 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 views
OpenNebula Conf 2014 | Cloud Automation for OpenNebula by Kishorekumar Neelam... by 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 views
OpenNebulaConf 2014 - Cloud Automation for OpenNebula - Kishorekumar Neelamegam by 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 Project847 views
Cloud Native Dünyada CI/CD by Mustafa AKIN
Cloud Native Dünyada CI/CDCloud Native Dünyada CI/CD
Cloud Native Dünyada CI/CD
Mustafa AKIN354 views
Real World Enterprise Reactive Programming using Vert.x by 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 views
Real World Enterprise Reactive Programming using Vert.x by 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 views
A High-Speed Data Ingestion Service in Java Using MQTT, AMQP, and STOMP.pdf by 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 views
Introduction to Apache Mesos and DC/OS by Steve Wong
Introduction to Apache Mesos and DC/OSIntroduction to Apache Mesos and DC/OS
Introduction to Apache Mesos and DC/OS
Steve Wong339 views

More from Ivelin Yanev

Project Loom by
Project LoomProject Loom
Project LoomIvelin Yanev
64 views14 slides
Building flexible ETL pipelines with Apache Camel on Quarkus by
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 views14 slides
Git collaboration by
Git collaborationGit collaboration
Git collaborationIvelin Yanev
59 views44 slides
Java exeptions by
Java exeptionsJava exeptions
Java exeptionsIvelin Yanev
63 views11 slides
Introducing java oop concepts by
Introducing java oop conceptsIntroducing java oop concepts
Introducing java oop conceptsIvelin Yanev
69 views16 slides
Introducing generic types by
Introducing generic typesIntroducing generic types
Introducing generic typesIvelin Yanev
42 views13 slides

More from Ivelin Yanev(10)

Building flexible ETL pipelines with Apache Camel on Quarkus by Ivelin Yanev
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 Quarkus
Ivelin Yanev395 views
Introducing java oop concepts by Ivelin Yanev
Introducing java oop conceptsIntroducing java oop concepts
Introducing java oop concepts
Ivelin Yanev69 views
Introducing generic types by Ivelin Yanev
Introducing generic typesIntroducing generic types
Introducing generic types
Ivelin Yanev42 views
Java features. Java 8, 9, 10, 11 by Ivelin Yanev
Java features. Java 8, 9, 10, 11Java features. Java 8, 9, 10, 11
Java features. Java 8, 9, 10, 11
Ivelin Yanev115 views
Intoduction Internet of Things by Ivelin Yanev
Intoduction Internet of ThingsIntoduction Internet of Things
Intoduction Internet of Things
Ivelin Yanev82 views

Recently uploaded

HarshithAkkapelli_Presentation.pdf by
HarshithAkkapelli_Presentation.pdfHarshithAkkapelli_Presentation.pdf
HarshithAkkapelli_Presentation.pdfharshithakkapelli
11 views16 slides
Fleet Management Software in India by
Fleet Management Software in India Fleet Management Software in India
Fleet Management Software in India Fleetable
11 views1 slide
Programming Field by
Programming FieldProgramming Field
Programming Fieldthehardtechnology
5 views9 slides
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko... by
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...Deltares
14 views23 slides
Airline Booking Software by
Airline Booking SoftwareAirline Booking Software
Airline Booking SoftwareSharmiMehta
6 views26 slides
tecnologia18.docx by
tecnologia18.docxtecnologia18.docx
tecnologia18.docxnosi6702
5 views5 slides

Recently uploaded(20)

Fleet Management Software in India by Fleetable
Fleet Management Software in India Fleet Management Software in India
Fleet Management Software in India
Fleetable11 views
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko... by Deltares
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...
Deltares14 views
Airline Booking Software by SharmiMehta
Airline Booking SoftwareAirline Booking Software
Airline Booking Software
SharmiMehta6 views
tecnologia18.docx by nosi6702
tecnologia18.docxtecnologia18.docx
tecnologia18.docx
nosi67025 views
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx by 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
animuscrm15 views
360 graden fabriek by info33492
360 graden fabriek360 graden fabriek
360 graden fabriek
info33492122 views
DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J... by Deltares
DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J...DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J...
DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J...
Deltares12 views
FOSSLight Community Day 2023-11-30 by Shane Coughlan
FOSSLight Community Day 2023-11-30FOSSLight Community Day 2023-11-30
FOSSLight Community Day 2023-11-30
Shane Coughlan5 views
20231129 - Platform @ localhost 2023 - Application-driven infrastructure with... by sparkfabrik
20231129 - Platform @ localhost 2023 - Application-driven infrastructure with...20231129 - Platform @ localhost 2023 - Application-driven infrastructure with...
20231129 - Platform @ localhost 2023 - Application-driven infrastructure with...
sparkfabrik7 views
Dev-HRE-Ops - Addressing the _Last Mile DevOps Challenge_ in Highly Regulated... by TomHalpin9
Dev-HRE-Ops - Addressing the _Last Mile DevOps Challenge_ in Highly Regulated...Dev-HRE-Ops - Addressing the _Last Mile DevOps Challenge_ in Highly Regulated...
Dev-HRE-Ops - Addressing the _Last Mile DevOps Challenge_ in Highly Regulated...
TomHalpin96 views
DSD-INT 2023 Process-based modelling of salt marsh development coupling Delft... by Deltares
DSD-INT 2023 Process-based modelling of salt marsh development coupling Delft...DSD-INT 2023 Process-based modelling of salt marsh development coupling Delft...
DSD-INT 2023 Process-based modelling of salt marsh development coupling Delft...
Deltares7 views
Dapr Unleashed: Accelerating Microservice Development by Miroslav Janeski
Dapr Unleashed: Accelerating Microservice DevelopmentDapr Unleashed: Accelerating Microservice Development
Dapr Unleashed: Accelerating Microservice Development
Miroslav Janeski10 views
Unlocking the Power of AI in Product Management - A Comprehensive Guide for P... by NimaTorabi2
Unlocking the Power of AI in Product Management - A Comprehensive Guide for P...Unlocking the Power of AI in Product Management - A Comprehensive Guide for P...
Unlocking the Power of AI in Product Management - A Comprehensive Guide for P...
NimaTorabi212 views
DSD-INT 2023 Exploring flash flood hazard reduction in arid regions using a h... by Deltares
DSD-INT 2023 Exploring flash flood hazard reduction in arid regions using a h...DSD-INT 2023 Exploring flash flood hazard reduction in arid regions using a h...
DSD-INT 2023 Exploring flash flood hazard reduction in arid regions using a h...
Deltares9 views
Advanced API Mocking Techniques by Dimpy Adhikary
Advanced API Mocking TechniquesAdvanced API Mocking Techniques
Advanced API Mocking Techniques
Dimpy Adhikary19 views
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports by Ra'Fat Al-Msie'deen
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug ReportsBushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
Quality Engineer: A Day in the Life by John Valentino
Quality Engineer: A Day in the LifeQuality Engineer: A Day in the Life
Quality Engineer: A Day in the Life
John Valentino6 views

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