Slide 1

Slide 1 text

Intro To Quarkus

Slide 2

Slide 2 text

Eric Deandrea Who’s on stage today? 🤘 23+ years software development experience 🤘 Contributor to Open Source projects 🤘 Quarkus 🤘 Spring Boot 🤘 Spring Framework 🤘 Spring Security 🤘 Spring Session 🤘 Build & deliver cloud-native development training programs 🤘 Published author

Slide 3

Slide 3 text

● How Quarkus enables modern Java development & the Kubernetes-native experience ● Introduce familiar Spring concepts, constructs, & conventions and how they map to Quarkus ● Emphasis on testing patterns & practices https://red.ht/quarkus-spring-devs

Slide 4

Slide 4 text

The Warmup Issue with Java https://youtu.be/bWmuqh6wHgE (Simon Ritter - Azul Systems - first 13 minutes)

Slide 5

Slide 5 text

Build Time Runtime Packaging (maven, etc) gradle…) Load config file from file system Parse it Classpath scanning to find annotated classes Attempt to load class to enable/disable features Build its model of the world. Start the management (thread, pool…) @ @ > How Does a Framework Start?

Slide 6

Slide 6 text

Build Time Runtime @ @ > The Quarkus Way Runtime Build Time @ @ > Package model Build Time Runtime @ @ >

Slide 7

Slide 7 text

The Quarkus Way enables Native Compilation JVM Build Time @ @ > Package model Native

Slide 8

Slide 8 text

Unification of Imperative & Reactive Unification of Imperative and Reactive

Slide 9

Slide 9 text

🤘 Zero-config Live coding 🤘 Auto-provision services 🤘 Continuous testing 🤘 Dev UI 🤘 CLI Enhancing Developer Joy

Slide 10

Slide 10 text

IT’S STILL JAVA!

Slide 11

Slide 11 text

AOT/Native-image vs VM mode

Slide 12

Slide 12 text

Command Line Job Github App Cloud / Container Native Serverless & Functions Micro services EDA Kube Operator Traditional Apps CRUD Monoliths GitHub Actions Admin Tools Reactive Systems

Slide 13

Slide 13 text

Jam Time!

Slide 14

Slide 14 text

https://www.techempower.com/benchmarks/#section=data-r21&test=db&f=zijunz-zik0zj-zik0zj-zik0zj-zik0zj-zik0zj-zik0zj-v2qiv3-xamxa7-zik0zj-zik0zj-zik0zj-zik0zj-35r https://www.redhat.com/en/blog/key-findings-idc-red-hat-quarkus-lab-validation https://www.reddit.com/r/java/comments/o0ewar/do_quarkus_performance_benefits_scale Don’t Take My Word For It!

Slide 15

Slide 15 text

https://www.redhat.com/en/resources/greener-java-applications-detail https://hollycummins.com/writing-greener-java-applications Setup / Assumptions 🤘 AWS (us-east-1) 🤘 SLA > 99% 🤘 800 req/sec over 20 days 🤘 50% load The Cost / Carbon Impact

Slide 16

Slide 16 text

https://github.com/quarkusio/quarkus-super-heroes Quarkus Superheroes

Slide 17

Slide 17 text

Kubernetes Native Java with Quarkus https://www.infoq.com/articles/native-java-quarkus Deployment Developer Joy ● Quickly & easily build Kubernetes-Native Java applications ● Industry leader in startup time and memory utilization for native and JVM applications ● One step native executable generation ● Leverage existing Java, Jakarta, MicroProfile, & Spring expertise ● Imperative & reactive APIs side-by-side ● Live coding with zero config

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

Thank You!