Tous les produits
Search
Centre de documentation

Serverless App Engine:Migration des applications Dubbo vers SAE

Dernière mise à jour :Aug 11, 2026

Si votre application Dubbo est déjà déployée sur Alibaba Cloud, vous pouvez la migrer vers Serverless App Engine (SAE). Cette rubrique explique comment migrer votre application vers SAE en toute transparence.

Étape 1 : Migrer la première application

Cette rubrique illustre le processus de migration à l'aide d'une application de démonstration. Pour télécharger cette application, consultez Démo.

  1. Priorisez les applications à migrer.

    Nous vous recommandons de commencer par le fournisseur situé au niveau le plus bas dans la chaîne d'appels. Si la chaîne d'appels est trop complexe à analyser, commencez par n'importe quelle application.

  2. Ajoutez une dépendance et modifiez les configurations de l'application.

    Remarque

    Cette migration utilise la stratégie de double enregistrement et de double souscription.

    1. Ajoutez la dépendance edas-dubbo-migration-bom au fichier pom.xml.

      <dependency>
          <groupId>com.alibaba.edas</groupId>
          <artifactId>edas-dubbo-migration-bom</artifactId>
          <version>2.6.5.1</version>
          <type>pom</type>
      </dependency>                            
    2. Ajoutez l'adresse IP du registre de services SAE au fichier application.properties.

      dubbo.registry.address = edas-migration://192.168.XX.XX:9999?service-registry=edas://127.0.XX.XX:8080,zookeeper://192.168.XX.XX:2181&reference-registry=zookeeper://192.168.XX.XX:2181&config-address=127.0.XX.XX:8848      
      Important

      Pour les applications non Spring Boot, configurez ce paramètre dans le fichier dubbo.properties ou dans le fichier de configuration Spring correspondant.

      Paramètre

      Description

      edas-migration://192.168.XX.XX:9999

      Vous n'avez pas besoin de modifier l'en-tête pour plusieurs registres de services. Au démarrage, Dubbo valide l'adresse IP et le port. Si votre niveau de journalisation est défini sur WARN ou inférieur, un message de journal WARN peut apparaître ; ignorez-le.

      service-registry

      Adresse du registre de services pour l'enregistrement des services. Vous pouvez spécifier plusieurs adresses de registre de services, séparées par une virgule (,). Chaque adresse doit respecter le format standard du registre Dubbo. Dans l'exemple, 192.168.XX.XX correspond à l'adresse ZooKeeper. Remplacez-la par l'adresse IP et le port de votre instance ZooKeeper réelle.

      reference-registry

      Adresse du registre de services pour la souscription aux services. Ce paramètre prend en charge plusieurs registres ou la souscription au registre de services d'origine utilisé avant la migration.

      config-address

      Adresse utilisée pour la diffusion des configurations dynamiques.

    3. Autres modifications.

      Pour les applications Spring qui n'utilisent pas Spring Boot, ajoutez com.alibaba.edas.dubbo.migration.controller.EdasDubboRegistryRest à votre chemin de scan.

  3. Vérification locale.

    Cette section fournit un exemple utilisant la configuration dynamique.

    1. Avant de démarrer la vérification, effectuez les étapes suivantes :

    2. Vérifiez que le service est enregistré.

      • Connectez-vous au centre de configuration et d'enregistrement léger et recherchez le service dans la liste des fournisseurs (Provider List).

      • Connectez-vous à ZooKeeper et consultez les informations d'enregistrement et de consommation des services.

    3. Facultatif : Connectez-vous à Nacos et configurez les informations d'enregistrement des services.

      Remarque

      Si vous n'avez pas besoin de configuration dynamique, ignorez cette étape.

      Paramètre

      Description

      DataId

      Définissez ce paramètre sur dubbo.registry.config.

      Groupe

      Définissez ce paramètre sur le nom de l'application Dubbo, spécifié par applicationName, tel que dubbo-migration-demo-server. La configuration étant au niveau de l'application, le nom de l'application doit être unique.

      Contenu de la configuration

      • Niveau application

        dubbo.reference.registry=edas://127.0.XX.XX:8080   # The address of the service registry for service subscription.
        dubbo.service.registry=edas://127.0.XX.XX:8080,zookeeper:127.0.XX.XX:2181   # The address of the service registry for service registration.
      • Niveau adresse IP de l'instance

        192.168.XX.XX.dubbo.reference.registry=edas://127.0.XX.XX:8080,zookeeper:127.0.XX.XX:2181
        192.168.XX.XX.dubbo.service.registry=edas://127.0.XX.XX:8080

      Lors de la vérification d'un cluster, nous vous recommandons de vérifier d'abord au niveau de l'adresse IP de l'instance, puis au niveau de l'application.

    4. Vérifiez que les appels d'application fonctionnent correctement après la migration et contrôlez l'état d'enregistrement et de souscription dans le registre de services.

      • Spring Boot 1.x : http://ip:port/dubboRegistry

      • Spring Boot 2.x : http://ip:port/actuator/dubboRegistry

      Voici un exemple des informations de configuration du registre de services renvoyées lorsque vous accédez à l'un des endpoints précédents :

      {
        "dubbo.effective.reference.registry": [
          "edas://127.0.xxx:8080"
        ],
        "dubbo.orig.reference.registry": [
          "zookeeper://127.0.xxx:2181"
        ],
        "dubbo.orig.service.registry": [
          "edas://127.0.xxx:8080",
          "zookeeper://127.0.xxx:2181"
        ],
        "dubbo.effective.service.registry": [
          "edas://127.0.xxx:8080",
          "zookeeper://127.0.xxx:2181"
        ]
      }
  4. Déployez l'application sur SAE.

    Déployez l'application sur SAE selon vos besoins. Pour plus d'informations, consultez Déploiement d'applications.

  5. Vérifiez les résultats.

    1. Vérifiez que vos services métier fonctionnent correctement.

    2. Consultez la surveillance de la souscription aux services.

      Si la surveillance Spring Boot Actuator est activée pour votre application, accédez aux endpoints Actuator pour afficher les informations RibbonServerList des services souscrits :

      • Spring Boot 1.x : http://ip:port/dubboRegistry

      • Spring Boot 2.x : http://ip:port/actuator/dubboRegistry

      {
        "dubbo.effective.reference.registry": [
          "edas://127.0.xxx:8080"
        ],
        "dubbo.orig.reference.registry": [
          "zookeeper://127.0.xxx:2181"
        ],
        "dubbo.orig.service.registry": [
          "edas://127.0.xxx:8080",
          "zookeeper://127.0.xxx:2181"
        ],
        "dubbo.effective.service.registry": [
          "edas://127.0.xxx:8080",
          "zookeeper://127.0.xxx:2181"
        ]
      }

      Descriptions des paramètres :

      • dubbo.orig.** : Informations sur le registre de services configurées dans l'application.

      • dubbo.effective.** : Informations effectives sur le registre de services.

Étape 2 : Migrer toutes les applications restantes

Migrez séquentiellement toutes les autres applications vers SAE. Pour plus d'informations, consultez Étape 1 : Migrer la première application.

Étape 3 : Nettoyer la configuration de migration

Une fois la migration terminée, supprimez la configuration du registre de services d'origine ainsi que la dépendance dédiée à la migration edas-dubbo-migration-bom.

Mettez à jour les adresses du registre de services afin que les consommateurs et les fournisseurs ne s'abonnent qu'à SAE. Cela implique la suppression de la configuration ZooKeeper. Procédez de l'une des manières suivantes :

  • Méthode 1 : Utilisez la configuration dynamique. Pour plus d'informations, consultez la section vérification locale.

  • Méthode 2 : Modifiez la configuration manuellement.

    Après avoir mis à jour toutes les applications, modifiez l'adresse du registre de services et définissez l'adresse de souscription sur SAE Config Server.

    dubbo.registry.address = edas-migration://192.168.XX.XX:9999?service-registry=edas://127.0.XX.XX:8080,zookeeper://192.168.XX.XX:2181&reference-registry=edas://127.0.XX.XX:8080&config-address=127.0.XX.XX:8848

    Remplacez la valeur de reference-registry de zookeeper://192.168.XX.XX:2181 par edas://127.0.XX.XX:8080, puis déployez l'application.

    Remarque

    Une fois la migration terminée, si vous n'utilisez plus ZooKeeper, retirez zookeeper://192.168.XX.XX:2181 de la configuration du registre de services.

    Bien que l'utilisation continue de l'ancien ZooKeeper n'affecte pas la stabilité métier, elle complexifie l'interaction de Dubbo avec le registre de services et peut augmenter le taux d'erreur. Nous vous recommandons de supprimer rapidement l'ancienne configuration ZooKeeper une fois la migration achevée, et de redémarrer les applications par lots pendant les heures creuses. L'exemple d'adresse finale est le suivant :

    dubbo.registry.address = edas://127.0.XX.XX:8080