sessions
Quarkus (From RedHat)
Why and How of Qualrkus ?
CLI
fEATURES
dONOT HAVE TO DO MAVEN -CMPIL EBUILD AFTER EACH CHANGE –qUARKUS DOES IT FOR US
-TEST Comes with Quarkus
What makes Quarkus restarts that quick?
When no config of DB/KAFKA in application prop- it assumes it in dev environment and starts for you based on mere dependency
CLI
Quarkus dev
UI local(can change some of config at runtime – only indev mode node in prod mode)
localhost:8080/**
Some Repo:
https://github.com/localstack/localstack
Advantages:
1/Startup fast
2.Supersonic subatomis(low memory size-100s of application run oon a machine)
3.unifies imperitive and reactive
reactive by core but allows iperitive (fact- 20% faster)
4.Best of breed framework (uses kubernates/openshift,RestEasyverix,Eclipse Microprofile)
HOW QUarkus Works?
Old java way
build..[Runime –>]load configuration(xml)–>Class path annnothationscanning->Bulds its mode–>
In Quarkus
All stuff at build time (Not at each startup)
Less classes loaded–>less memory needed
AOT(aHEAD OF TiME )[gRAVm ] VS JIT
HINT:
ANYTHING WORKS IN JAVA WORKS IN QURKUS (LOMBOK)
qUARKUS AND nATIVE Image..
Apples to ORagnes OCm[arision]-
Native App in MAc Book and Quarkus on COntainer
Session -2
Quarkus for Spring Developers
Agenda
-Intro
-Spring developers and Quarkus
-Additional resources –
Intro-
–Traditionally
1.Throughput at expense of foorprint
2.long running at the expense of startup speed
3.Rich and dynamic behavioud for mutable system
Cloud native
1.changed things (with quarkus)
2.Jokingly said supersonic and subatomic -because beig fast and less footprint
minimize runtime,move as much as possible to build phase
Statement:more class being loaded at runtime – means more memory is used up leaving heong less memory fo rothers
Dead-code elimination?
Spring Nativcs vs Quarkus(Maximime dead code eliminaiton)
Load of language check this is loaded or tha tis loaded. sincew quarkus us build time
Example:
if you lookinto quarkus generate jar lots ofo contants that define (at the build time)
GraVM: takes java jar and generates native application
Cons- cOPLEX APPLICAITON HAVE SOME ISIUE AS SOME CLASS NOT SUPPORTED
However Quarkus knows at build time so makes it native without much complexity.
Book -Quarkus for Spring Developers by Eric Deandrea (all above points mentioend here)
https://red.ht/quarkus-spring-devs
Note: convert to springboot to quarkus with no code-change
https://github.com/RedHat-Middleware-Workshops/spring-to-quarkus-todo