EX378
Red Hat Certified cloud native Developer exam
Panoramica
Descrizione dell'esame
L'esame Red Hat Certified cloud native Developer (EX378) mette alla prova le tue competenze e conoscenze in merito alla programmazione lato server delle applicazioni Java che utilizzano il framework Quarkus. L'esame è incentrato sulle competenze di base necessarie per creare un microservizio completo utilizzando un datastore permanente.
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®) .
L'esame si svolge sulla versione Red Hat di Quarkus v3.8.
Destinatari dell'esame:
Le seguenti categorie di utenti potrebbero essere interessate a ottenere una certificazione Red Hat Certified cloud native Developer:
- Sviluppatori Java che intendono implementare servizi utilizzando Quarkus
- Sviluppatori che sviluppano qualsiasi tipo di applicazione Java e desiderano aumentare la produttività utilizzando un framework Java più veloce, dinamico e componibile
- Professionisti Red Hat Certified che desiderano conseguire la certificazione Red Hat Certified Architect (RHCA)
Requisiti per accedere all'esame:
- È consigliabile aver completato il corsoRed Hat cloud native Microservices Development with Quarkus (DO378) o possedere un'esperienza pratica equivalente
- Familiarità con l'utilizzo di Visual Code/VS Codium in un ambiente Red Hat Enterprise Linux
- Buona esperienza con JSE, incluse la conoscenza e la comprensione dei concetti fondamentali e delle API Java. Durante l'esame, ad esempio, è necessario conoscere eccezioni, annotazioni e le API di raccolta.
- La conoscenza di base di OpenShift è utile ma non obbligatoria
- È utile avere familiarità con la messaggistica e la comunicazione con Kafka
Obiettivi
In preparazione all'esame
Argomenti di studio per l'esame
Per facilitare la preparazione, negli obiettivi dell'esame vengono elencate le aree di attività previste nel programma. Red Hat si riserva il diritto di aggiungere, rimuovere e modificare gli obiettivi dell'esame. Tali modifiche saranno rese note anticipatamente.
I candidati devono essere in grado di svolgere le seguenti attività:
Ottenere le proprietà di configurazione tramite numerose sorgenti compatibili con l'ambiente, rese disponibili con l'inserimento di dipendenza o la ricerca
- Esternalizzare i dati in valori configurati
- Inserire i valori configurati nei bean usando i qualifier @Inject e @ConfigProperty
- Dimostrare la capacità di creare e accedere a un mapping di configurazione a un oggetto Java
- Comprendere l'ordinamento predefinito di ConfigSource e come estendere il supporto per la configurazione con ConfigSource personalizzato
- Comprendere come impostare le proprietà di configurazione personalizzate per l'ambiente di destinazione con i profili
Creare microservizi basati su Quarkus tolleranti agli errori utilizzando le strategie di tolleranza agli errori di MicroProfile
- Analizzare le relazioni di MicroProfile Config
- Comprendere le differenze tra i tipi di esecuzione sincrona e asincrona
- Comprendere la resilienza utilizzando i timeout
- Comprendere i criteri di ripetizione e applicarli tramite annotazione @Retry
- Comprendere e definire la strategia di fallback
- Comprendere e applicare CircuitBreaker
- Comprendere e applicare Bulkhead
- Comprendere e impostare la configurazione della tolleranza di errore
Verifica della condizione di un'applicazione Quarkus da un'altra macchina utilizzando il controllo integrità di MicroProfile
- Comprendere e implementare l'interfaccia del controllo integrità
- Comprendere e applicare le annotazioni @Startup, @Liveness e @Readiness
- Comprendere e implementare una risposta di controllo integrità reattivo
- Comprendere e implementare una risposta di controllo integrità
- Creare una risposta di controllo integrità intuitiva
- Comprendere e utilizzare l'interfaccia utente di integrità
- Comprendere e applicare gruppi di integrità e l'annotazione @HealthGroup
- Comprendere e applicare l'annotazione @Wellness
Osservare, raccogliere e misurare i dati da un'applicazione Quarkus in esecuzione utilizzando Micrometer Metrics
- Comprendere e utilizzare l'aggregazione dei dati dimensionali con i tag
- Comprendere e strumentare il codice con timer, indicatori, contatori, riepiloghi di distribuzione e timer per attività lunghe
- Comprendere le annotazioni micrometriche e l'API del registro
- Comprendere e utilizzare le metriche esposte tramite API REST
- Comprendere il modello di programmazione delle metriche dell'applicazione Quarkus
- Comprendere come esportare i dati di monitoraggio negli agenti di gestione
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
- Comprendere l'autenticazione basata su token
- Utilizzare i token di connessione JWT per proteggere i servizi
- Contrassegnare un'applicazione JAX-RS a cui occorre applicare il controllo degli accessi MP-JWT
- Associare i token MP-JWT alle API per container di Java EE
Implementare un'applicazione Quarkus ed esporre gli endpoint del servizio RESTful con Resteasy Reactive e Jakarta REST (in precedenza noto come JAX-RS)
- Comprendere i concetti di RESTful, in particolare l'applicazione e l'uso dei metodi HTTP PUT, DELETE, GET e POST
- Conoscere e usare i codici standard restituiti da HTTP e body Return Response
- Comprendere come scrivere servizi JSON REST con Quarkus
- Implementare la classe di risorse root RESTful
- Esporre un servizio RESTful utilizzando Jakarta REST (in precedenza noto come JAX-RS)
- Comprendere e applicare la dichiarazione degli endpoint: mappatura degli URI, rappresentazione HTTP e tipi di contenuto
- Comprendere e applicare il supporto asincrono/reattivo per dichiarare gli endpoint non bloccanti
- Utilizzare CDI per integrare componenti
- Utilizzare Bean Validation per garantire il formato e la coerenza dei dati
Mapping JPA semplificato con Panache
- Comprendere le differenze tra Active Record Pattern e Repository Pattern
- Utilizzare concetti base di JPA per creare, leggere, aggiornare ed eliminare oggetti permanenti e relazioni tra gli stessi
- Eseguire il mapping di una relazione bidirezionale uno-a-molti tra due entità, inclusi entrambi gli elementi dell'associazione
- Dimostrare la capacità di eseguire le operazioni Panache più comuni e aggiungere metodi di entità personalizzati.
Messaggistica reattiva sulle applicazioni Quarkus
- Comprendere la programmazione reattiva
- Comprendere il concetto di base della messaggistica
- Comprendere i canali
- Informazioni su Incoming e Outgoing
- Comprendere il riconoscimento dei messaggi
Specifica Microprofile OpenAPI per documentare le API RESTful
- Comprendere documenti OpenAPI e l'interfaccia utente Swagger per rilevare le API dei servizi remoti
- Dimostrare di saper collegare gli endpoint dei servizi remoti di controllo delle versioni semantiche (semver)
- Comprendere come generare il documento OpenAPI predefinito e personalizzato per gli endpoint JAX-RS
Interazione con le API REST in Quarkus utilizzando REST Reactive Client
- Comprendere l'approccio indipendente dai tipi per richiamare i servizi RESTful su HTTP utilizzando Jakarta REST e l'annotazione MicroProfile
- Comprendere i concetti di REST, in particolare l'applicazione e l'uso dei metodi HTTP PUT, DELETE, GET e POST
- Comprendere e utilizzare la versione non bloccante di REST Client Reactive con supporto asincrono
- Dimostrare la capacità di creare e usare un client REST per connettersi a un servizio remoto
- Impostare parametri e configurare l'URI del client REST per richiamare un microservizio remoto specifico
- Comprendere e applicare ulteriori intestazioni client personalizzate alle richieste dei client
- Dimostrare la capacità di convertire le risposte HTTP per gestire le eccezioni
- Comprendere e utilizzare intestazioni client speciali
Utilizzare OpenTelemetry (OTel) per strumentare il tracciamento distribuito per le applicazioni web interattive
- Comprendere e implementare la traccia distribuita tra i microservizi con OpenTelemetry
- Dimostrare la capacità di seguire e comprendere l'intero percorso dell'applicazione distribuita
- Comprendere che il Tracer crea Span e la propagazione del contesto assemblata in una traccia negli identificatori di correlazione
- Comprendere come le informazioni contestuali vengono trasferite tra gli Span utilizzando l'archivio chiavi Baggage
Come per tutti gli esami Red Hat basati sulle prestazioni, le configurazioni devono persistere senza intervento dopo il riavvio del sistema.
Informazioni essenziali
Red Hat consiglia di completare il corso Red Hat cloud native Microservices Development with Quarkus (DO378) per prepararsi. La frequenza ai corsi non è obbligatoria, pertanto è possibile iscriversi solo all'esame.
La frequenza ai corsi Red Hat può dimostrarsi una parte importante della preparazione, tuttavia non garantisce l'esito positivo dell'esame. L'esperienza maturata, la pratica e la predisposizione naturale sono fattori altrettanto determinanti.
Esistono numerosi testi e altre risorse sull'amministrazione di sistema applicata ai prodotti Red Hat. Red Hat non raccomanda alcuna guida ufficiale per la preparazione agli esami, tuttavia la consultazione di materiale integrativo può facilitare la comprensione e risultare utile.
Struttura dell'esame
Il Red Hat Certified cloud native Developer Exam è un esame pratico che richiede l'esecuzione di attività di sviluppo reali. Durante l'esame non è possibile accedere a Internet ed è vietato portare con sé documenti cartacei o elettronici. Questo divieto comprende appunti, libri o altro materiale. La documentazione fornita con il prodotto è quasi sempre disponibile durante l'esame.
Notifica dell'esito
I risultati ufficiali degli esami vengono forniti esclusivamente da Red Hat Certification Central. Red Hat non autorizza esaminatori o partner di formazione a comunicare i risultati direttamente ai candidati. Gli esiti degli esami vengono solitamente comunicati entro tre giorni lavorativi in base al calendario statunitense.
I risultati degli esami comunicati rappresentano i punteggi totali. Red Hat non fornisce i risultati sulle singole prove, né informazioni aggiuntive su richiesta.
Esami o corsi successivi consigliati:
Introduction to Containers, Kubernetes, and Red Hat OpenShift (DO180)
Red Hat OpenShift Development I: Containerizing Applications (DO288)
Building Resilient Microservices with Red Hat OpenShift Service Mesh (DO328)