Schulung: Quarkus Power Workshop
Moderne Services entwickeln, testen, überwachen
- Architektur: Microservice und Monolith
- Standards: Jakarta EE (aka Java EE), MicroProfile
- Cloud Readiness: Config, Health, Metrics, Tracing, Logging
- Kommunikation: REST, Messaging
- Konsistenz: LRA (aka Saga)
- Security: JWT, OIDC
In diesem Kurs lernen Sie den Einsatz des Frameworks Quarkus zur Erstellung moderner Serveranwendungen kennen.
Nach einem Überblick über die verwendeten Standards und einem Vergleich von Architekturformen wird gezeigt, wie Quarkus-Projekte erstellt werden und wie mit den Entwicklungswerkzeugen rasch und leichtgewichtig Anwendungen erstellt werden.
Quarkus-Anwendungen basieren auf Standards. Im Kurs werden die wesentlichen Bestandteile aus Jakarta EE (früher Java EE) und MicroProfile eingesetzt.
Durch den Einsatz von MicroProfile Config, Health, Telemetry etc. werden die Anwendungen Cloud-ready und können gut in Container-Umgebungen betrieben werden.
Wir bauen im Kurs mehrere Services auf, die auf Datenbanken zugreifen und untereinander synchron über REST und asychron mittels Messaging kommunizieren, Die Konsistenz der Daten stellen wir mit LRA sicher, einer stadardisieren Ausprägung des Saga Patterns. Zur Absicherung verwenden wir Open ID Connect und JSON Webtokens.
Professionelle Softwareentwicklung umfasst stets Testing. Quarkus bietet dazu Test-Profile und verschiedenen Mocking-Möglichkeiten an.
Überblick über JEE und MicroProfile
- Aufbau und Bestandteile von JEE-Anwendungen
- MicroProfile
Architekturform MicroServices und Monolith
- Überblick und Begriffe
- Vor- und Nachteile
Einführung in Quarkus
- Entstehung, Abgrenzung zu WildFly und Thorntail
- Bootstrapping, Extensions
- Developer Mode, Dev UI
- Konfiguration
- Logging
- Testing mit JUnit, @QuarkusTest und RestAssured
Jakarta EE in Quarkus
- Quick Refresh von JPA, CDI, BV, REST
- Besonderheiten der Nutzung in Quarkus
MicroProfile in Quarkus
- Quick Refresh von Config, Health, OpenAPI, Fault Tolerance
- Observability mit Telemetry (Metrics, Tracing, Logging)
- Inter-Service-Kommunikation mit REST und Messaging (Kafka)
- Service-übergreifende Konsistenz mit LRA (Long Running Actions)
- Service-Absicherung mit JWT und Keycloak
Testen mit Test-Profilen und Mocking
Q&A-Session nach dem Kurs
Wir bieten bei dem Kurs allen Teilnehmenden im Nachgang eine individuelle Q&A-Session für Fragen rund um das Thema an. Es sind dabei auch alle interessierten Kolleg:innen eingeladen. Dauer: ca. 1 Stunde, online.
Der Kurs wendet sich an Sie, wenn Sie über JEE-Grundkenntnisse verfügen, also bspw. bisher Anwendungen für einen Application Server wie WildFly oder Open Liberty geschrieben haben, und nun Services auf einer leichtgewichtigeren Basis entwickeln wollen.