JAVAX-QRK
Új Microservice alkalmazásfejlesztés Quarkussal
Ismertető
A Quarkus egy Kubernetes-hez optimalizált Java keretrendszer, amelyet kifejezetten mikroservice-ek és felhő alapú alkalmazások fejlesztésére terveztek. Nagy hangsúlyt fektet a gyors indulási időre és az alacsony memóriahasználatra, ezáltal javítva a teljesítményt és a hatékonyságot. A fejlesztők számára gazdag ökoszisztémát és fejlesztési eszközöket kínál, amelyek megkönnyítik a modern Java alkalmazások létrehozását és karbantartását.
A képzés során egy REST API-t nyújtó microservice kerül kifejlesztésre, relációs adatbázissal. Kafka message brokerhez kapcsolódik, és támogatja az observability-t.
Tematika
- Microservice architektúra, service-ekkel kapcsolatos elvárások
- Quarkus keretrendszer és szabványok, MicroProfile
- Development mode
- Dev UI, Extensions
- Twelve-Factor app
- Contexts and Dependency Injection
- Egyszerű alkalmazás, fejlesztés Maven használatával
- REST webszolgáltatások, metódusok, státuszkódok, paraméterek, fejlécek, hibakezelés (RFC 7807 - Problem Details), validáció (Bean Validation), custom validation
- Request és response filter
- Swagger, OpenAPI
- Unit és integrációs tesztelés (Rest Assured), mockolás
- Reaktív programozási eszközök
- MicroProfile Config
- Profiles
- Build time configuration
- Naplózás
- Access log
- Adatbáziskezelés, Panache repository és active record pattern
- Tranzakciókezelés
- Query projection, CQRS
- Séma migráció Liquibase-zel
- Parancssoros alkalmazás
- REST Client
- Integrációs tesztelés WireMock használatával
- Quarkus Messaging, Kafka Connector
- Health, metrikák, trace, naplózás
- Management interfész
- Container image előállítása
- Natív fordítás
Szükséges előképzettség
Elvárt a Java programozási nyelv stabil ismerete.
Előfeltétele a Java SE alapok (JAVA-BSC) és a Java SE haladó (JAVA-ADV) képzések elvégzése, vagy azon képzések anyagának gyakorlati ismerete.
Mivel a tananyagok egy része angol nyelvű, ezért alapfokú, dokumentumolvasás-szintű angol nyelvtudás szükséges. A képzés magyar nyelvű, magyar slide-ok alapján.