Quali corsi devo seguire per sostenere questo esame?
- Aver completato il corso Red Hat cloud native Microservices Development with Quarkus (DO378) o possedere un’esperienza pratica equivalente.
- Familiarità con l’utilizzo di Visual Code/Codiium in un ambiente Red Hat Enterprise Linux.
- Per questo esame è necessaria una buona esperienza con JSE, incluse la conoscenza e la comprensione dei concetti e delle API Java principali. Durante l’esame, ad esempio, è necessario conoscere eccezioni, annotazioni e le API di raccolta.
- La conoscenza di base di Openshift/Kubernetes è utile ma non obbligatoria.
Descrizione esame
L’esame Red Hat Certified Cloud-native Developer exam (EX378) verifica le competenze e conoscenze in materia di programmazione lato server delle applicazioni Java Kubernetes native che utilizzano il framework Quarkus. L’esame è incentrato sulle competenze di base necessarie per creare un microservizio completo utilizzando un datastore persistente.
Il superamento dell’esame consente di ottenere la qualifica di Red Hat Certified Cloud-native Developer, utile anche per il conseguimento della certificazione Red Hat Certified Architect (RHCA®) certification
L’esame si svolge su Red Hat® OpenShift® Container Platform 4.5. L’esame si svolge su Red Hat Build of Quarkus v1.7.
Argomenti dell'esame
- Ottenimento delle proprietà di configurazione tramite numerose sorgenti compatibili con l’ambiente, rese disponibili con l’inserimento di dipendenza o la ricerca
-
- Esternalizzazione di dati in valori configurati
- Inserimento di valori configurati nei bean usando i qualifier @Inject e @ConfigProperty
- Accesso o creazione di una configurazione.
- Comprensione di ConfigSource predefinito e personalizzato e dell’ordinamento di ConfigSource.
- Creazione di microservizi basati su Quarkus tolleranti agli errori utilizzando le strategie di tolleranza agli errori di MicroProfile
-
- Analisi delle relazioni di MicroProfile Config.
- Analisi delle differenze tra i tipi di esecuzione sincrona e asincrona.
- Utilizzo di @Timeout.
- Comprensione dei criteri di ripetizione e loro applicazione tramite @Retry.
- Comprensione e definizione del fallback.
- Comprensione e applicazione di CircuitBreaker.
- Comprensione e applicazione di Bulkhead.
- Comprensione e impostazione della configurazione della tolleranza di errore.
- Verifica della condizione di un’applicazione Quarkus da un’altra macchina utilizzando il controllo integrità di MicroProfile
-
- Comprensione e implementazione dell’interfaccia del controllo integrità.
- Comprensione e applicazione delle annotazioni @Liveness e @Readiness.
- Comprensione e implementazione di una risposta di controllo integrità.
- Creazione di una risposta di controllo integrità intuitiva.
- Esportazione dei dati di monitoraggio negli agenti di gestione da un’applicazione Quarkus in esecuzione utilizzando MicroProfile Metrics
-
- Comprensione e utilizzo di tre insiemi di risorse secondarie (ambiti): di base, del fornitore e dell’applicazione.
- Comprensione dei tag (etichette).
- Comprensione e utilizzo dei metadati.
- Comprensione dei registri delle metriche e @Metric.
- Esposizione delle metriche tramite l’API REST.
- Familiarità con le metriche richieste.
- Analisi del modello di programmazione relativo alle metriche dell’applicazione Quarkus.
- MicroProfile Interoperable JWT RBAC sulle applicazioni Quarkus: JSON Web Token (JWT) basati su OpenID Connect (OIDC) per il controllo degli accessi basato sui ruoli (RBAC) degli endpoint dei microservizi
-
- Comprensione dell’autenticazione basata su token.
- Utilizzo dei token di connessione JWT per proteggere i servizi.
- Distinzione di un’applicazione JAX-RS a cui occorre applicare il controllo degli accessi MP-JWT.
- Associazione dei token MP-JWT alle API per container di Java EE.
- Implementazione di un’applicazione Quarkus ed esposizione degli endpoint del servizio REST con JAX-RS
-
- Comprensione dei concetti di base di REST, in particolare l’applicazione e l’uso dei metodi HTTP PUT, DELETE, GET e POST.
- Familiarità e utilizzo dei codici standard restituiti da HTTP.
- Implementazione della classe di risorse root RESTful.
- Esposizione di un servizio REST tramite JAX-RS.
- Comprensione e utilizzo delle annotazioni @Path, @Produce e @Consume.
- Utilizzo di CDI per integrare componenti.
- Utilizzo di Bean Validation per garantire il formato dei dati e la coerenza.
- Mapping JPA semplificato con Panache
-
- Analisi delle differenze tra Active Record Pattern e Repository Pattern.
- Utilizzo dei concetti base di JPA per creare, leggere, aggiornare ed eliminare oggetti persistenti e relazioni tra gli stessi.
- Esecuzione del mapping di una relazione bidirezionale uno-a-molti tra due entità, inclusi entrambi gli elementi dell’associazione.
- Esecuzione delle operazioni Panache più comuni e aggiunta dei metodi di entità personalizzati.
- Specifica Microprofile OpenAPI per documentare le API RESTful
-
- Analisi dei documenti OpenAPI e dell’interfaccia utente Swagger per rilevare le API dei servizi remoti.
- Collegamento agli endpoint dei servizi remoti di controllo delle versioni semantiche (semver).
- Comprensione delle modalità di generazione del documento OpenAPI predefinito e personalizzato per gli endpoint JAX-RS.
- Interazione con le API REST in Quarkus utilizzando MicroProfile REST Client
-
- Familiarità con l’approccio indipendente dai tipi per richiamare i servizi RESTful su HTTP utilizzando le API JAX-RS.
- Comprensione dei concetti di base di REST, in particolare l’applicazione e l’uso dei metodi HTTP PUT, DELETE, GET e POST.
- Creazione e utilizzo di un client REST per connettersi a un servizio remoto.
- Impostazione dei parametri e configurazione dell’URI del client REST per richiamare un microservizio remoto specifico.
- Familiarità e utilizzo di nuove intestazioni client speciali.