Tous les produits
Search
Centre de documentation

Serverless App Engine:Gérer les configurations d'application

Dernière mise à jour :Aug 21, 2026

Cette rubrique explique comment créer une application de démonstration Spring Cloud utilisant Spring Cloud Alibaba Nacos Config pour la gestion des configurations, la déployer sur SAE, puis gérer ses configurations via la console SAE.

Stocker les valeurs de configuration directement dans le code fragilise les déploiements : toute modification d'un paramètre impose de reconstruire et de redéployer l'application. En externalisant la configuration avec Nacos, vous mettez à jour les valeurs en temps réel sans modifier le code ni redémarrer le service. SAE s'intègre à Nacos open source via Application Configuration Management (ACM). Une fois l'application déployée sur SAE, la console SAE gère et propage les modifications de configuration directement vers les instances en cours d'exécution.

Cette rubrique s'appuie sur l'application de démonstration nacos-config-example. Téléchargez nacos-config-example.zip pour suivre la procédure.

Prérequis

Avant de commencer, vérifiez que vous disposez des éléments suivants :

Démarrer le serveur Nacos

  1. Téléchargez et extrayez le package du serveur Nacos.

  2. Accédez au répertoire nacos/bin et exécutez la commande de démarrage adaptée à votre système d'exploitation :

    • Linux, Unix ou macOS : sudo sh startup.sh -m standalone

    • Windows : startup.cmd -m standalone

    L'indicateur -m standalone démarre Nacos en mode autonome plutôt qu'en mode cluster (paramètre par défaut). Sous Windows, un double-clic sur startup.cmd lance le serveur en mode cluster et échoue. Pour corriger ce problème, ouvrez le fichier et définissez MODE="standalone" . Consultez le Guide de démarrage rapide de Nacos pour plus de détails.

Créer une configuration dans le serveur Nacos local

  1. Connectez-vous à la console du serveur Nacos. Le nom d'utilisateur et le mot de passe par défaut sont tous deux nacos.

  2. Dans le volet de navigation de gauche, cliquez sur Configurations. Sur la page Configurations, cliquez sur l'icône add icon add icon située dans le coin supérieur droit.

  3. Sur la page Create configuration, définissez les paramètres suivants et cliquez sur Publish :

    • Data ID : nacos-config-example.properties

    • Group : DEFAULT_GROUP

    • Configuration Content : test.name=nacos-config-test

Étape 1 : Utiliser Nacos Config pour gérer les configurations de l'application

Compatibilité des versions

Cet exemple utilise Spring Boot 2.1.4.RELEASE et Spring Cloud Greenwich.SR1. Choisissez la version de Spring Cloud Alibaba correspondant à votre version de Spring Cloud :

Version de Spring Cloud Version de Spring Cloud Alibaba
Greenwich 2.1.1.RELEASE
Finchley 2.0.1.RELEASE
Edgware 1.5.1.RELEASE (obsolète ; ne pas utiliser)

Générer l'application

  1. Créez un projet Maven nommé nacos-config-example.

  2. Ajoutez les dépendances suivantes au fichier pom.xml. Cet exemple utilise Spring Cloud Greenwich, donc spring-cloud-starter-alibaba-nacos-config est en version 2.1.1.RELEASE.

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.4.RELEASE</version>
        <relativePath/>
    </parent>
    
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            <version>2.1.1.RELEASE</version>
        </dependency>
    </dependencies>
    
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Greenwich.SR1</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
    
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
  3. Dans src/main/java, créez le package com.aliware.edas.

  4. Dans le package com.aliware.edas, créez la classe de démarrage NacosConfigExampleApplication :

    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    @SpringBootApplication
    public class NacosConfigExampleApplication {
        public static void main(String[] args) {
            SpringApplication.run(NacosConfigExampleApplication.class, args);
        }
    }
  5. Dans le package com.aliware.edas, créez le contrôleur EchoController :

    • @Value("${test.name}") injecte la valeur de la clé test.name depuis Nacos Config.

    • @RefreshScope provoque la recréation du bean lorsque Nacos pousse une modification de configuration, ce qui met à jour automatiquement la valeur injectée sans redémarrage. Sans cette annotation, l'application lit la configuration uniquement au démarrage et ignore les modifications ultérieures.

    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.cloud.context.config.annotation.RefreshScope;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    @RefreshScope
    public class EchoController {
    
        @Value("${test.name}")
        private String userName;
    
        @RequestMapping(value = "/")
        public String echo() {
            return userName;
        }
    }
  6. Dans src/main/resources, créez le fichier bootstrap.properties et ajoutez la configuration suivante pour connecter l'application à votre serveur Nacos local. 127.0.0.1:8848 est l'adresse par défaut du serveur Nacos ; 18081 est le port de service de l'application. Modifiez l'adresse et le port si votre serveur Nacos s'exécute ailleurs.

    spring.application.name=nacos-config-example
    server.port=18081
    spring.cloud.nacos.config.server-addr=127.0.0.1:8848

    Pour toutes les options de configuration disponibles, consultez la section Référence de configuration.

  7. Exécutez la méthode main dans NacosConfigExampleApplication pour démarrer l'application localement.

Étape 2 : Déployer l'application sur SAE

Après avoir testé l'application en local, déployez-la sur SAE. Pour les instructions de déploiement, consultez Déployer des applications.

Comment SAE remplace les paramètres Nacos

Lorsque l'application s'exécute sur SAE, SAE injecte automatiquement les détails de connexion Nacos suivants avec une priorité supérieure aux valeurs de votre fichier bootstrap.properties : l'adresse IP et le port de service du serveur Nacos, le namespace, la clé d'accès, la clé secrète et le chemin de contexte. Aucune modification du fichier bootstrap.properties n'est requise — vous pouvez conserver ou supprimer les valeurs d'origine.

Environnement d'exécution

Lors du premier déploiement via la console SAE en utilisant l'option Deployment with JAR Packages, définissez Application Runtime Environment sur Standard Java Application Runtime Environment. Sélectionnez Open JDK 8 pour Java Environment, et sélectionnez Upload JAR Package pour File Upload Method.

Créer la configuration correspondante dans SAE

Avant le déploiement, recréez la même configuration dans la gestion des configurations de SAE afin que l'application puisse la lire après le déploiement.

  1. Connectez-vous à la console SAE. Dans le volet de navigation de gauche, cliquez sur Namespace, puis sélectionnez une région dans la barre de menu supérieure.

  2. Sur la page Namespace, cliquez sur le nom du namespace cible.

  3. Dans le volet de navigation de gauche, choisissez Distributed Configuration Management > Configurations. Sur la page Configurations, cliquez sur Create Configuration.

  4. Dans le panneau Create configuration, définissez les paramètres et cliquez sur Create.

    Paramètre Description
    Data ID L'identifiant de configuration. Utilisez nacos-config-example.properties pour cet exemple. Pour garantir l'unicité, suivez la convention de nommage package.class — par exemple, com.taobao.tc.refund.log.level.
    Group Le groupe de configuration. Utilisez DEFAULT_GROUP pour cet exemple. Pour garantir l'unicité, utilisez le format nom du produit:nom du module — par exemple, ACM:Test. Les groupes prennent en charge l'authentification.
    Data Encryption Active le chiffrement pour les configurations contenant des valeurs sensibles. Nécessite l'activation de Key Management Service (KMS) et l'octroi d'autorisations ACM. Les configurations chiffrées ont un Data ID préfixé par `cipher-`. Consultez Créer et utiliser une configuration chiffrée.
    Configuration Format Le format du contenu de configuration. Sélectionnez TEXT pour cet exemple.
    Configuration Content Le contenu de la configuration. Saisissez test.name=nacos-config-test pour cet exemple.
    Configuration Description Une description facultative pour la configuration.
    More Configurations
    Application (sous More Configuration) Le nom de l'application à laquelle appartient la configuration.
    Label (sous More Configuration) Libellés pour organiser les configurations. Jusqu'à cinq libellés par configuration.

Étape 3 : Vérifier le résultat

Une fois l'application démarrée sur SAE, vérifiez qu'elle lit correctement la configuration depuis SAE.

  1. Exécutez la commande suivante. Remplacez <application instance IP> et <service port> par les valeurs réelles de votre application.

    curl http://<application instance IP>:<service port>

    Exemple :

    curl http://192.168.0.34:8080

    La commande renvoie nacos-config-test si l'application a chargé la configuration avec succès. > Tip: Si la commande ne renvoie pas la valeur attendue, vérifiez les journaux de l'application dans la console SAE pour confirmer que la connexion à Nacos a réussi, et assurez-vous que le Data ID et le Group dans SAE correspondent aux valeurs du fichier bootstrap.properties.

  2. Dans la console SAE, mettez à jour le contenu de la configuration de nacos-config-test à nacos-config-test2, puis exécutez à nouveau la commande curl.

    curl http://192.168.0.34:8080

    La commande renvoie désormais nacos-config-test2, confirmant que SAE a propagé la configuration mise à jour vers l'application en cours d'exécution sans redémarrage. L'annotation @RefreshScope sur EchoController déclenche l'actualisation automatique.

Référence de configuration

Ajoutez l'un des éléments suivants au fichier bootstrap.properties selon vos besoins.

Élément de configuration Clé Valeur par défaut Obligatoire Description
Adresse du serveur spring.cloud.nacos.config.server-addr Aucune Oui L'adresse du serveur Nacos.
Préfixe du Data ID spring.cloud.nacos.config.prefix ${spring.application.name} Non Le préfixe du Data ID.
Groupe spring.cloud.nacos.config.group DEFAULT_GROUP Non Le groupe de configuration.
Suffixe du Data ID et format de configuration spring.cloud.nacos.config.file-extension properties Non Le suffixe du Data ID et le format du fichier de configuration. Valeurs prises en charge : properties, yaml, yml.
Encodage du contenu spring.cloud.nacos.config.encode UTF-8 Non L'encodage du contenu de configuration.
Délai d'attente de récupération spring.cloud.nacos.config.timeout 3000 Non Le délai d'attente pour la récupération de la configuration, en millisecondes.
Namespace spring.cloud.nacos.config.namespace Aucune Non Isole les configurations entre les environnements (par exemple, développement, test et production).
Chemin relatif spring.cloud.nacos.config.context-path Aucune Non Le chemin relatif de l'API du serveur.
Endpoint spring.cloud.nacos.config.endpoint UTF-8 Non L'endpoint d'un service dans la région. Utilisez-le pour résoudre dynamiquement l'adresse du serveur.
Activer l'écoute et l'actualisation automatique spring.cloud.nacos.config.refresh.enabled true Non Active l'écoute des configurations et l'actualisation automatique. Laissez cette valeur par défaut.

Pour la liste complète des éléments de configuration, consultez la documentation Spring Cloud Alibaba Nacos Config.

Étapes suivantes