Quarkus Cloud Development
Lesgeld
Cursus Quarkus Cloud Development
De cursus Quarkus Cloud Development biedt een diepgaand inzicht in het Quarkus framework, dat speciaal is ontworpen voor cloud-native Java ontwikkeling. Tijdens deze cursus leer je de essenties van het Quarkus framework, waaronder de Quarkus Dependency Injection, die gebaseerd is op CDI (Context and Dependency Injection). Ook krijg je waardevolle informatie over het gebruik van GraalVM voor de compilatie naar native code, wat essentieel is voor optima
Cursus Quarkus Cloud Development
De cursus Quarkus Cloud Development biedt een diepgaand inzicht in het Quarkus framework, dat speciaal is ontworpen voor cloud-native Java ontwikkeling. Tijdens deze cursus leer je de essenties van het Quarkus framework, waaronder de Quarkus Dependency Injection, die gebaseerd is op CDI (Context and Dependency Injection). Ook krijg je waardevolle informatie over het gebruik van GraalVM voor de compilatie naar native code, wat essentieel is voor optimale prestaties in cloudomgevingen.
Quarkus Configuration
Vervolgens wordt aandacht besteed aan de configuratie mogelijkheden van Quarkus applicaties. Hierbij komen configuratieparameters, YAML-configuratie en programmatische configuratie aan de orde. Door deze kennis ben je in staat om Quarkus-applicaties efficiënt te configureren voor verschillende omgevingen.
Rest Services met Quarkus
Quarkus is ontworpen om samen te werken met bekende Java standaards, frameworks en libraries. In deze cursus leer je hoe je Quarkus kunt gebruiken voor de definitie en de benadering van JSON Rest Services. Hierbij wordt ook aandacht besteed aan de OpenAPI-specificatie, wat essentieel is voor het documenteren van je API's.
Data Access in Quarkus
Daarnaast komt de ondersteuning die Quarkus biedt voor Data Access aan bod, met name het gebruik van Hibernate ORM en JPA. Hierbij worden ook connection pooling en transacties behandeld, zodat je database-interacties efficiënt kunt beheren.
Messaging in Quarkus
Onderdeel van het programma van de cursus Quarkus Cloud Development is messaging tussen applicaties. Diverse messaging patterns en stream processing met Apache Kafka worden behandeld, wat belangrijk is voor het bouwen van responsieve en schaalbare applicaties.
Security in Quarkus
Vervolgens wordt aandacht besteed aan Security in Quarkus applicaties. Implementaties van diverse securitymechanismes, waaronder JSON Web Tokens en OAuth2, komen aan de orde. Dit is cruciaal voor het veiligstellen van je applicaties in een cloud-omgeving.
Quarkus Cloud en Hosting
Quarkus applicaties zijn bij uitstek geschikt om gehost te worden in een public cloud of in een intern gehoste Kubernetes-cluster. We bespreken hoe karakteristieken zoals snelle startup en gering geheugengebruik belangrijk zijn om de hostingkosten laag te houden.
Monitoring en Extensies
Tenslotte wordt aandacht besteed aan het monitoren van Quarkus applicaties met de Micrometer Extension en Prometheus. Ook het zelf schrijven van extensies komt aan bod, zodat je Quarkus kunt aanpassen aan jouw specifieke behoeften. Voor meer informatie over Quarkus, kun je de officiële Quarkus website bezoeken.
Voor verdieping in cloud-infrastructuren en -diensten, kun je ook onze cursus AWS Foundations overwegen.
De cursus Quarkus Cloud Development is bestemd voor developers die willen leren hoe Quarkus gebruikt kan worden voor de ontwikkeling van microservices en serverless applicaties.
Voorkennis Cursus Quarkus Cloud Development
Kennis en ervaring met Java programmeren en web technologie is vereist om aan deze cursus te kunnen deelnemen.
Uitvoering Training Quarkus Cloud Development
De theorie wordt behandeld aan de hand van presentaties en wordt afgewisseld met oefeningen. Demo's worden gebruikt om de theorie te verduidelijken. De lestijden zijn van 9.30 uur tot 16.30 uur.
Certificaat Quarkus Cloud Development
De deelnemers ontvangen een certificaat Quarkus Cloud Development na succesvolle afronding van de cursus.
Modules
Module 1 : Quarkus Intro
- What is Quarkus?
- Graal VM
- Imperative Code
- Reactive Code
- Dependency Injection
- Microservices
- Serverless Apps
- Quarkus CLI
- Quarkus Tooling
- Packaging
- Bootstrapping
Module 2 : Quarkus Configuration
- Quarkus Configuration
- SmallRye Config AP
- Configuration Parameters
- ConfigProperty Annotation
- YAML Configuration
- Programmatic Configuration
- Build Time Configuration
- Mapping to Objects
- Extending Configuration
- Application Startup
- Application Termination
Module 3 : Rest Services
- Rest JSON Services
- Consume JSON Payload
- Produce JSON Payload
- Scalability
- Reactive Rest Clients
- CRUD Services
- Bean Validation
- Using Websockets
- Multipart Clients
- Open API
- Swagger
Module 4 : Data Access
- Connecting to Data
- JDBC Drivers
- Reactive Drivers
- Hibernate and JPA
- Unified Configuration
- Connection Pooling
- Transactions
- Named Datasources
- Datasource Injection
- Health Checks
- Zero Config Setup
Module 5 : Messaging
- Asynchronous Messaging
- Messaging Patterns
- Reactive Messaging
- Messaging with SmallRye
- Using Apache Kafka
- Stream Processing
- Schema Registry
- Using Avro
- Serialized Records
- Java Messaging Service
- Event Bus
Module 6 : Security
- Security Architecture
- Authentication Mechanisms
- Basic Authentication
- Form Authentication
- Proactive Authentication
- TLS Authentication
- Identity Providers
- OAuth2
- JSON Web Tokens
- CORS
- Authorization
Module 7 : Quarkus Cloud
- Kubernetes Extension
- Kubernetes Resources
- Using dekorate
- kubernetes.json
- kubernetes.yml
- Deployment Resources
- StatefulSet
- Job or CronJob
- Labels and Annotations
- Exposing Application
- Ingress Rules
Module 8 : Monitoring
- Micrometer Extension
- Prometheus MeterRegistry
- Dimensional Labels
- Review Generated Metrics
- Inject the MeterRegistry
- Adding Counters
- Naming Conventions
- Prometheus Endpoint
- Shaping Data
- Review Collected Metrics
- Add a Timer
Module 9 : Extensions
- Role of Extensions
- Ahead of Time Compilation
- Extension Parts
- Runtime Modules
- Deployment Module
- GraalVM’s Native Compilation
- Quarkus Bootstrap Phases
- Augmentation
- Static Init
- Runtime Init
- Testing Extension