consulting, concepts, reviews GEDOPLAN IT Training Java, JEE, Tools etc. in Berlin, Bielefeld, on-site JEE since 1998 Speaker and author 2 gedoplan.de Take MicroProfile to the Clouds with Quarkus
for Java) Product name Jakarta EE Oracle keeps copyright Java EE Package names javax.* Jakarta EE 8 same code as Java EE 8 released Sept 10 2019 3 JEE gedoplan.de Take MicroProfile to the Clouds with Quarkus
(deployment descriptors, properties, …) JEE Server CDI runtime JPAruntime REST runtime Technical config * JRE build deploy run * Database, messaging security … Thin WAR small large gedoplan.de Take MicroProfile to the Clouds with Quarkus
CDI runtime JPA runtime REST runtime JRE build run * Application properties, database, messaging security … Fat JAR JAR + Dependencies large gedoplan.de Take MicroProfile to the Clouds with Quarkus
Thorntail (aka WildFly Swarm) Optimized for quick start and short time to first response Hotspot and GraalVM https://quarkus.io/ 7 gedoplan.de Take MicroProfile to the Clouds with Quarkus
source has changed 10 $ mvn quarkus:dev Listening for transport dt_socket at address: 5005 17:54:50,319 INFO [io.qua.dep.QuarkusAugmentor] (main) Beginning quarkus au 17:54:50,949 INFO [io.qua.resteasy] (build-1) Resteasy running without serv 17:54:50,949 INFO [io.qua.resteasy] (build-1) - Add quarkus-undertow to run 17:54:50,980 INFO [io.qua.dep.QuarkusAugmentor] (main) Quarkus augmentation 17:54:52,452 INFO [io.quarkus] (main) Quarkus started in 2.320s. Listening 17:54:52,452 INFO [io.quarkus] (main) Profile dev activated. Live Coding ac 17:54:52,454 INFO [io.quarkus] (main) Installed features: [cdi, resteasy] Demo quarkus-getting-started gedoplan.de Take MicroProfile to the Clouds with Quarkus
test extensible 12 greeting.message = Hello greeting.name = world %dev.greeting.name = developer %test.greeting.name = tester application.properties gedoplan.de Take MicroProfile to the Clouds with Quarkus
errors (=exceptions) @Timeout cancels hanging calls @Fallback supplies replacement value 15 @Retry(maxRetries = 4) public int doSomethingWithRetry() { @Timeout(1000) public int doSomethingWithTimeout() { private int return42() { return 42; } @Fallback(fallbackMethod = "return42") public int doSomethingWithFallback() { gedoplan.de Take MicroProfile to the Clouds with Quarkus
high error rate 16 @CircuitBreaker(failureRatio = 0.25, requestVolumeThreshold = 10) public int doSomethingWithCircuitBreaker() { closed open half-open too many errors ok delay error gedoplan.de Take MicroProfile to the Clouds with Quarkus
von CDI 2.0 no decorators, portable extensions, specialization, passivation ignore beans.xml contents not yet: interceptors on super classes, transactional observers Build time DI JPA implementation Hibernate Datasource config in application.properties DB extensions for PostgreSQL, H2, MariaDB, MS SQL, Derby 17 gedoplan.de Take MicroProfile to the Clouds with Quarkus
only Non-Linux build in Docker container Starts within milliseconds, low memory consumption 18 gedoplan.de quarkus-getting-started $ mvn -Pnative,docker … [INFO] docker run -v //c/GEDOPLAN/projects/gedoplan/showcase/quar [quarkus-getting-started-runner:22] classlist: 4,939.89 ms … [quarkus-getting-started-runner:22] write: 576.45 ms [quarkus-getting-started-runner:22] [total]: 121,756.96 ms [INFO] Quarkus augmentation completed in 126125ms … [INFO] DOCKER> Built image sha256:0eb9a Take MicroProfile to the Clouds with Quarkus
imperative) with AMQP, Kafka, JMS NoSQL Flyway OpenID, Keycloak, JWT RBAC Spring DI, Web, Data JPA, Security Scheduling Mail JSF … 19 gedoplan.de Take MicroProfile to the Clouds with Quarkus
Spring Boot for JEE only small changes for JEE developers is fun to work with includes native execution aims at cloud, serverless young (started in 2018), but approved components 20 gedoplan.de Take MicroProfile to the Clouds with Quarkus
Berlin, Bielefeld, on-site new (2020): Microservices mit Quarkus - Grundlagen new (2020): Microservices mit Quarkus - Aufbau new (2019): Java DevOps: Development und Delivery mit Docker, Kubernetes und Jenkins [email protected] @dirkweil 21 gedoplan.de Take MicroProfile to the Clouds with Quarkus