Tous les produits
Search
Centre de documentation

Enterprise Distributed Application Service:Documentation utilisateur de Dubbo

Dernière mise à jour :Aug 10, 2026

Cette rubrique présente la documentation utilisateur d'Apache Dubbo à titre de référence.

Prise en main

Configurez votre environnement et exécutez une application Dubbo.


Rubrique


Description


Informations générales


Concepts fondamentaux d'Apache Dubbo et son rôle dans les systèmes distribués


Prérequis


Logiciels et exigences environnementales


Architecture 2.6.1


Disposition des composants et modèle d'interaction pour Dubbo 2.6.1


Architecture 2.7.1


Architecture mise à jour et nouvelles fonctionnalités dans Dubbo 2.7.1


Utilisation


Modèles de base pour construire et exécuter des services Dubbo


Démarrage rapide


Guide étape par étape pour créer votre première application Dubbo


Dépendances


Bibliothèques et dépendances requises


Maturité


Niveaux de stabilité des fonctionnalités et indicateurs de disponibilité pour la production

Configuration

Configurez les services Dubbo via XML, fichiers de propriétés, annotations ou l'API.


Rubrique


Description


Configuration XML


Définissez les services, références et registres dans des fichiers XML


Configuration par propriétés


Utilisez des fichiers .properties pour une configuration légère


Configuration API


Configurez Dubbo par programmation avec du code Java


Configuration par annotations


Utilisez des annotations Java pour déclarer les services et les références


Centre de configuration dynamique


Poussez les modifications de configuration au moment de l'exécution


Processus de chargement de la configuration


Comment Dubbo résout et fusionne la configuration provenant de plusieurs sources


Chargement automatique des variables d'environnement


Mappez les variables d'environnement aux propriétés de configuration Dubbo

Exemples

Exemples fonctionnels des fonctionnalités courantes de Dubbo, organisés par catégorie.

Enregistrement et découverte de services


Rubrique


Description


Vérification préalable


Vérifiez la disponibilité du fournisseur avant le démarrage du consommateur


Cible explicite


Connectez-vous directement à un fournisseur spécifique, en contournant le registre


Souscription uniquement


Découvrez les fournisseurs via le registre sans enregistrer le service local


Enregistrement uniquement


Enregistrez le service local auprès du registre sans souscrire à d'autres fournisseurs


Service statique


Enregistrez des services avec une adresse fixe qui ne change pas dynamiquement


Registres multiples


Routage des services sur plusieurs serveurs de registre

Équilibrage de charge et tolérance aux pannes


Rubrique


Description


Équilibrage de charge


Configurez des stratégies d'équilibrage de charge pour les invocations de services


Stratégie de tolérance aux pannes


Gérez les échecs grâce à des politiques de tolérance aux pannes configurables


Dégradation de service


Renvoyez des résultats de secours lorsqu'un fournisseur est indisponible ou lent


Règle de routage


Acheminez le trafic vers des fournisseurs spécifiques selon des conditions définies


Configuration des règles


Appliquez des règles de gouvernance dynamiquement au moment de l'exécution

Modèle de service et gestion des versions


Rubrique


Description


Groupe de services


Isolez différentes implémentations de la même interface par groupe


Versions multiples


Exécutez simultanément plusieurs versions d'un service pour un déploiement sécurisé


Protocoles multiples


Exposez le même service sur plusieurs protocoles simultanément


Fusion de groupes


Aggrégez les résultats des fournisseurs issus de différents groupes de services

Modèles d'invocation


Rubrique


Description


Appel asynchrone


Invoquez des services distants sans bloquer le thread appelant


Exécution asynchrone


Exécutez la logique côté fournisseur de manière asynchrone pour améliorer le débit


Appel local


Invoquez un service au sein de la même JVM, en évitant la surcharge réseau


Paramètre de rappel


Recevez des résultats asynchrones via une interface de rappel


Notification d'événement


Déclenchez des événements en cas de succès, d'échec ou d'achèvement de l'invocation


Référence générique


Appelez n'importe quel service sans dépendance de compilation sur son interface


Service générique


Implémentez un fournisseur capable de gérer des interfaces de service arbitraires


Service Echo


Testez la disponibilité du service avec une requête echo légère


Contexte


Transmettez et récupérez des métadonnées limitées à la requête lors des invocations


Paramètres implicites


Attachez des paires clé-valeur cachées aux appels RPC sans modifier la signature de l'interface

Contrôle du trafic et gestion des connexions


Rubrique


Description


Contrôle de la concurrence


Limited le nombre de requêtes concurrentes gérées par un fournisseur ou un consommateur


Configuration des connexions


Définissez la taille du pool de connexions, le délai d'attente et les paramètres keep-alive


Connexion différée (Lazy connect)


Retardez la création de la connexion TCP jusqu'à l'envoi de la première requête


Connexion persistante (Stickiness)


Fixez un consommateur au même fournisseur pour les cas d'utilisation nécessitant une affinité de session


Autorisation par jeton


Exigez un jeton pour empêcher l'accès direct non autorisé aux fournisseurs


Modèle de threads


Personnalisez le pool de threads Netty et la stratégie de répartition

Fonctionnalités avancées


Rubrique


Description


Stub local


Exécutez une logique de pré- ou post-traitement côté consommateur avant ou après un appel distant


Simulation locale (Mock)


Renvoyez des données simulées lorsque le fournisseur est indisponible, utile pour les tests et la dégradation


Publication différée


Retenez l'enregistrement du service jusqu'à l'initialisation complète de l'application


Validation des paramètres


Validez les paramètres de méthode avant l'exécution de l'appel


Mise en cache des résultats


Mettez en cache les résultats d'invocation pour réduire les appels distants répétés


Cache ReferenceConfig


Réutilisez les instances ReferenceConfig pour éviter la création de proxys dupliqués


Transaction distribuée


Coordonnez les transactions entre plusieurs services


Dump de threads automatique


Déclenchez automatiquement un dump de threads lorsque Dubbo détecte un problème


Arrêt gracieux


Épuisez les requêtes en cours et désenregistrez le fournisseur avant la fermeture de la JVM

Journalisation, réseau et sérialisation


Rubrique


Description


Liaison du nom d'hôte


Contrôlez l'interface réseau et le nom d'hôte auxquels Dubbo se lie


Stratégie de journalisation


Alternez entre les frameworks de journalisation Log4j, SLF4J, JCL et JDK


Journal d'accès


Enregistrez chaque invocation entrante pour l'audit et le débogage


Conteneur de service


Exécutez les services Dubbo de manière autonome sans conteneur web


Netty4


Activez le transport Netty 4 pour des performances améliorées


Utilisation de la sérialisation Java efficace dans Dubbo (Kryo et FST)


Remplacez le sérialiseur par défaut par Kryo ou FST pour une sérialisation plus rapide


Simplification des URL de registre


Réduisez la longueur des URL de registre en supprimant les paramètres redondants

Référence API

Documentation Java API pour les classes et interfaces Dubbo.

Référence de configuration XML

Descriptions détaillées des attributs et de l'utilisation pour chaque balise XML Dubbo.


Balise


Description


Introduction


Attributs communs et conventions partagés entre les balises XML Dubbo


dubbo:service


Exposez une classe Java locale en tant que service Dubbo distant


dubbo:reference


Créez un proxy pour consommer un service Dubbo distant


dubbo:protocol


Configurez le protocole de communication (port, sérialisation, pool de threads)


dubbo:registry


Connectez-vous à un serveur de registre pour la découverte de services


dubbo:monitor


Activez la collecte et le reporting des métriques d'invocation


dubbo:application


Définissez les propriétés au niveau de l'application, telles que le nom et le propriétaire


dubbo:module


Regroupez les services associés dans un module logique


dubbo:provider


Définissez les valeurs par défaut pour toutes les balises dubbo:service dans la même configuration


dubbo:consumer


Définissez les valeurs par défaut pour toutes les balises dubbo:reference dans la même configuration


dubbo:method


Remplacez les paramètres pour une méthode spécifique au sein d'un service ou d'une référence


dubbo:argument


Configurez les règles de sérialisation ou de validation pour un argument de méthode spécifique


dubbo:parameter


Transmettez des paires clé-valeur arbitraires en tant que paramètres d'extension


dubbo:config-center


Connectez-vous à un centre de configuration externe pour une gestion centralisée

Références de protocole

Protocoles de communication pris en charge, chacun avec des détails de connexion, des cas d'utilisation et des contraintes.


Protocole


Description


Introduction


Conseils de sélection et comparaison des protocoles


dubbo://


Protocole binaire haute performance par défaut, adapté aux scénarios à haut débit et faible latence


rmi://


Protocole Java RMI pour l'intégration avec les services RMI hérités


hessian://


Protocole binaire Hessian avec transport HTTP intégré, utile pour les appels inter-langages


http://


Protocole HTTP standard pour des invocations simples de style RESTful


webservice://


Protocole Web Services basé sur SOAP pour l'intégration de systèmes d'entreprise


thrift://


Protocole Apache Thrift pour les RPC inter-langages


memcached://


Accédez aux serveurs Memcached via l'interface de service Dubbo


redis://


Accédez aux serveurs Redis via l'interface de service Dubbo


rest://


Protocole RESTful pour les invocations de services basées sur HTTP

Références de serveurs de registre

Options de registre pour la découverte de services, chacune avec des instructions de configuration et des compromis.


Registre


Description


Introduction


Conseils de sélection et comparaison des registres


Registre multicast


Registre sans dépendance pour le développement et les tests sur un réseau local


Serveur de registre ZooKeeper


Registre de qualité production basé sur Apache ZooKeeper


Centre de registre Nacos


Registre et centre de configuration basés sur Alibaba Nacos


Serveur de registre Redis


Implémentation de registre utilisant Redis pub/sub pour les notifications de service


Serveur de registre simple


Registre léger pour les tests, implémenté comme un service Dubbo standard

Référence des métadonnées

Gestion des métadonnées de service : comment Dubbo gère les métadonnées d'interface entre fournisseurs et consommateurs.

Référence des commandes Telnet

Utilisez l'interface Telnet intégrée pour inspecter les services en cours d'exécution, invoquer des méthodes et résoudre les problèmes depuis la ligne de commande.

Utilisation des commandes QoS

Le port de commande Quality of Service (QoS) fournit des contrôles de santé, un arrêt gracieux et des diagnostics au moment de l'exécution.

Référence du plug-in Maven

Plug-in Maven pour les applications Dubbo.

Bonnes pratiques


Rubrique


Description


Utilisation recommandée


Approches privilégiées pour les scénarios de configuration courants


Plan de capacité


Estimez le matériel et la taille du cluster en fonction du trafic attendu


Rapport de performance


Données de benchmark et directives de tuning pour optimiser le débit et la latence de Dubbo


Rapport de couverture de test


Métriques de couverture de code et stratégies de test pour les services Dubbo

Mise à niveau de version


Rubrique


Description


Procédures et notes de mise à niveau 2.7.x


Changements incompatibles, étapes de migration et notes de compatibilité pour la mise à niveau vers Dubbo 2.7.x

Erlang

Apache Dubbo fournit un client Erlang. Les rubriques ci-dessous couvrent la configuration et la mise en place pour les consommateurs et fournisseurs basés sur Erlang.


Rubrique


Description


Démarrage rapide


Configurez un projet Erlang Dubbo et exécutez un exemple basic consommateur-fournisseur


Configuration du consommateur


Configurez les références de service, les délais d'attente et l'équilibrage de charge pour les consommateurs Erlang


Configuration du fournisseur


Enregistrez et exposez les services Erlang à l'écosystème Dubbo


Configuration de la sérialisation


Choisissez et configurez un format de sérialisation pour la communication Erlang Dubbo