Knock implémente le contrat standard MicroProfile Health 4.0. Le code applicatif écrit contre la spec — HealthCheck, HealthCheckResponse, @Liveness/@Readiness/@Startup — se porte sans modification. L’effort de migration se concentre sur la configuration de build et l’abandon des extensions propres à un fournisseur.
Depuis SmallRye Health
| SmallRye | Knock | Note |
|---|---|---|
Beans |
Beans |
Identique. Conservez vos classes telles quelles. |
|
Mêmes annotations |
MicroProfile Health standard. Aucun changement. |
Extensions JSON propriétaires / champs supplémentaires |
JSON standard uniquement |
Knock émet exactement la charge de la spec ( |
Contrôles réactifs / Mutiny |
|
Knock exécute chaque |
Réglages de config |
Sans objet |
Knock n’a pas de surface de configuration propriétaire ; le comportement suit la spec. |
Étapes de migration
-
Remplacez la dépendance SmallRye Health par
knock-api,knock-core,knock-cdi-vaubanetknock-jaxrs(voir Référence). -
Assurez-vous que chaque
HealthCheckporte exactement un qualificateur de sonde — Knock rejette les contrôles non qualifiés au déploiement. -
Supprimez les champs de données propriétaires si des consommateurs avals exigeaient la charge stricte de la spec.
-
Ajoutez un
module-info.javarequérantmicroprofile.health.api(Knock est en JPMS strict). -
Vérifiez que les quatre endpoints répondent et que le statut HTTP agrégé est
200/503comme attendu.
Pièges
-
Contrôles non qualifiés — un
HealthChecksans@Liveness/@Readiness/@Startupéchoue à la validation CDI. Ajoutez le qualificateur manquant. -
JSON non standard — les consommateurs s’appuyant sur des champs propriétaires doivent être adaptés ; Knock n’émet que la forme de la spec.
-
Typage de
data— seulsString,long,booleanetintsont rendus nativement ; les autres types sont convertis en chaîne. -
Module path — les clauses
requiresmanquantes apparaissent comme des erreurs de résolution JPMS plutôt que comme des avertissements de classpath.
Pour aller plus loin
-
Démarrage — ajouter Knock à un projet.
-
Concepts — le modèle de santé.
-
État du TCK — garanties de conformité.