Todos los productos
Search
Centro de documentos

Serverless App Engine:Manage application configurations

Última actualización: Sep 05, 2026

Este tema explica cómo compilar una aplicación de demostración Spring Cloud que utiliza Spring Cloud Alibaba Nacos Config para la gestión de configuraciones. Posteriormente, se describe cómo desplegarla en SAE y administrar sus configuraciones mediante la consola de SAE.

Mantener los valores de configuración dentro del código hace que los despliegues sean frágiles, ya que cambiar un solo parámetro obliga a recompilar y redesplegar la aplicación. Al externalizar la configuración con Nacos, es posible actualizar los valores en tiempo de ejecución sin modificar el código ni reiniciar el servicio. SAE se integra con Nacos de código abierto a través de Application Configuration Management (ACM). Una vez desplegada una aplicación en SAE, la consola de SAE gestiona y envía los cambios de configuración directamente a las instancias en ejecución.

Este tema utiliza la aplicación de demostración nacos-config-example. Descargar nacos-config-example.zip para seguir los pasos.

Requisitos previos

Antes de empezar, asegúrese de contar con lo siguiente:

Iniciar Nacos Server

  1. Descargue y extraiga el paquete de Nacos Server.

  2. Vaya al directorio nacos/bin y ejecute el comando de inicio correspondiente a su sistema operativo:

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

    • Windows: startup.cmd -m standalone

    El indicador -m standalone inicia Nacos en modo independiente en lugar del modo clúster (que es el predeterminado). En Windows, hacer doble clic en startup.cmd lo inicia en modo clúster y provoca un error. Para solucionarlo, abra el archivo y establezca MODE="standalone" . Consulte Inicio rápido de Nacos para obtener más detalles.

Crear una configuración en el servidor Nacos local

  1. Inicie sesión en la consola de Nacos Server. El nombre de usuario y la contraseña predeterminados son ambos nacos.

  2. En el panel de navegación izquierdo, haga clic en Configurations. En la página Configurations, haga clic en el icono add icon situado en la esquina superior derecha.

  3. En la página Create configuration, configure los siguientes parámetros y haga clic en Publish:

    • Data ID: nacos-config-example.properties

    • Group: DEFAULT_GROUP

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

Paso 1: Uso de Nacos Config para gestionar configuraciones de aplicaciones

Compatibilidad de versiones

Este ejemplo utiliza Spring Boot 2.1.4.RELEASE y Spring Cloud Greenwich.SR1. Elija la versión de Spring Cloud Alibaba que corresponda a su versión de Spring Cloud:

Versión de Spring Cloud

Versión de Spring Cloud Alibaba

Greenwich

2.1.1.RELEASE

Finchley

2.0.1.RELEASE

Edgware

1.5.1.RELEASE (descontinuada; no utilizar)

Compilar la aplicación

  1. Cree un proyecto Maven llamado nacos-config-example.

  2. Agregue las siguientes dependencias a pom.xml. Este ejemplo usa Spring Cloud Greenwich, por lo que spring-cloud-starter-alibaba-nacos-config corresponde a la versión 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. En src/main/java, cree el paquete com.aliware.edas.

  4. En el paquete com.aliware.edas, cree la clase de inicio 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. En el paquete com.aliware.edas, cree el controlador EchoController:

    • @Value("${test.name}") inyecta el valor de la clave test.name desde Nacos Config.

    • @RefreshScope provoca que el bean se vuelva a crear cuando Nacos envía un cambio de configuración, de modo que el valor inyectado se actualiza automáticamente sin necesidad de reiniciar. Sin esta anotación, la aplicación lee la configuración solo al iniciarse e ignora los cambios posteriores.

    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. En src/main/resources, cree bootstrap.properties y agregue la siguiente configuración para conectar la aplicación a su servidor Nacos local. 127.0.0.1:8848 es la dirección predeterminada de Nacos Server; 18081 es el puerto de servicio de la aplicación. Modifique la dirección y el puerto si su servidor Nacos se ejecuta en otra ubicación.

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

    Para consultar todas las opciones de configuración disponibles, véase Referencia de configuración.

  7. Ejecute el método main en NacosConfigExampleApplication para iniciar la aplicación localmente.

Paso 2: Despliegue de la aplicación en SAE

Después de realizar las pruebas locales, despliegue la aplicación en SAE. Para obtener instrucciones de despliegue, consulte Deploy applications.

Cómo SAE sobrescribe la configuración de Nacos

Cuando la aplicación se ejecuta en SAE, este inyecta automáticamente los siguientes detalles de conexión de Nacos con una prioridad mayor que los valores definidos en bootstrap.properties: dirección IP y puerto de servicio de Nacos Server, namespace, access key, secret key y context path. No es necesario realizar cambios en bootstrap.properties; puede conservar o eliminar los valores originales.

Entorno de ejecución

La primera vez que realice un despliegue mediante la consola de SAE utilizando Deployment with JAR Packages, establezca Application Runtime Environment en Standard Java Application Runtime Environment. Seleccione Open JDK 8 para Java Environment y elija Upload JAR Package en File Upload Method.

Creación de la configuración correspondiente en SAE

Antes de desplegar, vuelva a crear la misma configuración en la gestión de configuraciones de SAE para que la aplicación pueda leerla tras el despliegue.

  1. Inicie sesión en la consola de SAE. En el panel de navegación izquierdo, haga clic en Namespace y seleccione una región en la barra de menú superior.

  2. En la página Namespace, haga clic en el nombre del namespace de destino.

  3. En el panel de navegación izquierdo, vaya a Distributed Configuration Management > Configurations. En la página Configurations, haga clic en Create Configuration.

  4. En el panel Create configuration, configure los parámetros y haga clic en Create.

    Parámetro Descripción
    Data ID Identificador de la configuración. Utilice nacos-config-example.properties para este ejemplo. Para garantizar la unicidad, siga la convención de nombres package.class; por ejemplo, com.taobao.tc.refund.log.level.
    Group Grupo de configuración. Utilice DEFAULT_GROUP para este ejemplo. Para garantizar la unicidad, utilice el formato nombre de producto:nombre de módulo; por ejemplo, ACM:Test. Los grupos admiten autenticación.
    Data Encryption Habilita el cifrado para configuraciones que contienen valores sensibles. Requiere la activación de Key Management Service (KMS) y la concesión de permisos de ACM. Las configuraciones cifradas tienen un Data ID con el prefijo `cipher-`. Consulte Create and use an encrypted configuration.
    Configuration Format Formato del contenido de la configuración. Seleccione TEXT para este ejemplo.
    Configuration Content Contenido de la configuración. Introduzca test.name=nacos-config-test para este ejemplo.
    Configuration Description Descripción opcional de la configuración.
    More Configurations
    Application (en More Configuration) Nombre de la aplicación a la que pertenece la configuración.
    Label (en More Configuration) Etiquetas para organizar configuraciones. Se permiten hasta cinco etiquetas por configuración.

Paso 3: Comprobación del resultado

Una vez que la aplicación se inicie en SAE, compruebe que lee correctamente la configuración desde SAE.

  1. Ejecute el siguiente comando. Reemplace <application instance IP> y <service port> por los valores reales de su aplicación.

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

    Ejemplo:

    curl http://192.168.0.34:8080

    El comando devuelve nacos-config-test si la aplicación cargó la configuración correctamente. > Tip: Si el comando no devuelve el valor esperado, revise los registros de la aplicación en la consola de SAE para confirmar que Nacos se conectó correctamente y verifique que el Data ID y el Group en SAE coincidan con los valores de bootstrap.properties.

  2. En la consola de SAE, actualice el contenido de la configuración de nacos-config-test a nacos-config-test2 y vuelva a ejecutar el comando curl.

    curl http://192.168.0.34:8080

    Ahora el comando devuelve nacos-config-test2, lo que confirma que SAE envió la configuración actualizada a la aplicación en ejecución sin necesidad de reiniciarla. La anotación @RefreshScope en EchoController activa la actualización automática.

Referencia de configuración

Agregue cualquiera de los siguientes elementos a bootstrap.properties según sea necesario.

Elemento de configuración

Clave

Valor predeterminado

Obligatorio

Descripción

Dirección del servidor

spring.cloud.nacos.config.server-addr

Ninguna

Sí

Dirección de Nacos Server.

Prefijo del Data ID

spring.cloud.nacos.config.prefix

${spring.application.name}

No

Prefijo del Data ID.

Grupo

spring.cloud.nacos.config.group

DEFAULT_GROUP

No

Grupo de configuración.

Sufijo del Data ID y formato de configuración

spring.cloud.nacos.config.file-extension

properties

No

Sufijo del Data ID y formato del archivo de configuración. Valores compatibles: properties, yaml, yml.

Codificación del contenido

spring.cloud.nacos.config.encode

UTF-8

No

Codificación del contenido de la configuración.

Tiempo de espera de recuperación

spring.cloud.nacos.config.timeout

3000

No

Tiempo de espera para recuperar la configuración, en milisegundos.

Namespace

spring.cloud.nacos.config.namespace

Ninguna

No

Aísla configuraciones entre entornos (por ejemplo, desarrollo, pruebas y producción).

Ruta relativa

spring.cloud.nacos.config.context-path

Ninguna

No

Ruta relativa de la API del servidor.

Endpoint

spring.cloud.nacos.config.endpoint

UTF-8

No

Endpoint de un servicio en la región. Úselo para resolver dinámicamente la dirección del servidor.

Habilitar listener y actualización automática

spring.cloud.nacos.config.refresh.enabled

true

No

Habilita la escucha de configuración y la actualización automática. Mantenga el valor predeterminado.

Para consultar la lista completa de elementos de configuración, véase la documentación de Spring Cloud Alibaba Nacos Config.

Pasos siguientes