Todos los productos
Search
Centro de documentos

Serverless App Engine:RollbackApplication

Última actualización: Sep 01, 2026

Revierte una aplicación.

Pruébelo ahora

Pruebe esta API en OpenAPI Explorer sin necesidad de firma manual. Las llamadas exitosas generan automáticamente código SDK acorde a sus parámetros. Descárguelo con seguridad de credenciales integrada para uso local.

Test

Autorización de RAM

La siguiente tabla describe la autorización necesaria para invocar esta API. Puede definirla en una directiva de Resource Access Management (RAM). A continuación, se detallan las columnas de la tabla:

  • Action: Estas acciones se utilizan en el elemento Action de las declaraciones de directivas de permisos de RAM para otorgar permisos que permitan realizar la operación.

  • API: La API que debe invocarse para llevar a cabo la acción.

  • Nivel de acceso: Nivel de acceso predefinido que se concede para cada API. Valores válidos: create, list, get, update y delete.

  • Tipo de recurso: Tipo de recurso que admite autorización para ejecutar la acción. Indica si la acción es compatible con permisos a nivel de recurso. El recurso especificado debe ser compatible con la acción; de lo contrario, la directiva no surtirá efecto.

    • En las API con permisos a nivel de recurso, los tipos de recursos obligatorios se marcan con un asterisco (*). Especifique el Alibaba Cloud Resource Name (ARN) correspondiente en el elemento Resource de la directiva.

    • Para las API sin permisos a nivel de recurso, se muestra All Resources. Utilice un asterisco (*) en el elemento Resource de la directiva.

  • Clave de condición: Claves de condición definidas por el servicio. Permiten un control granular y se aplican ya sea solo a acciones o a acciones asociadas con recursos específicos. Además de las claves de condición específicas del servicio, Alibaba Cloud proporciona un conjunto de common condition keys aplicables a todos los servicios compatibles con RAM.

  • Acción dependiente: Acciones dependientes necesarias para ejecutar la acción principal. Para completar la operación, el usuario de RAM o el rol de RAM debe contar con permisos para realizar todas las acciones dependientes.

Action

Nivel de acceso

Tipo de recurso

Clave de condición

Acción dependiente

sae:RollbackApplication

update

*All Resource

*

Ninguna Ninguna

Sintaxis de la solicitud

PUT /pop/v1/sam/app/rollbackApplication HTTP/1.1

Parámetros de la solicitud

Parámetro

Tipo

Obligatorio

Descripción

Ejemplo

AppId

string

Sí

El ID de la aplicación.

017f39b8-dfa4-4e16-a84b-1dcee4b1****

VersionId

string

Sí

El ID de la versión de la aplicación. Llame a la operación ListAppVersions para obtener el ID de la versión.

0026ff7f-2b57-4127-bdd0-9bf202bb9****

BatchWaitTime

integer

No

El tiempo de espera entre lotes. Unidad: segundos.

10

MinReadyInstances

integer

No

El número mínimo de instancias disponibles. Tenga en cuenta las siguientes reglas:

  • Si establece el valor en 0, se producen interrupciones del servicio cuando se actualiza la aplicación.

  • Si establece el valor en **-1**, el número mínimo de instancias disponibles se establece automáticamente en un valor recomendado por el sistema. El valor es el entero más cercano al que se redondea hacia arriba el resultado calculado de la siguiente fórmula: Número actual de instancias × 25%. Por ejemplo, si hay cinco instancias disponibles, el número mínimo de instancias disponibles se calcula mediante la siguiente fórmula: 5 × 25% = 1.25. En este caso, el número mínimo de instancias disponibles es 2.

Nota

Asegúrese de que haya al menos una instancia disponible durante el despliegue y la reversión de la aplicación para evitar interrupciones del servicio.

1

MinReadyInstanceRatio

integer

No

El porcentaje del número mínimo de instancias disponibles. Tenga en cuenta las siguientes reglas:

  • Si establece el valor en -1, el número mínimo de instancias disponibles no se determina en función de este parámetro. Valor predeterminado: -1.

  • Si establece el valor en un número de 0 a 100, el número mínimo de instancias disponibles se calcula mediante la siguiente fórmula: Número actual de instancias × (Valor de MinReadyInstanceRatio × 100%). El valor es el entero más cercano redondeado hacia arriba a partir del resultado calculado. Por ejemplo, si el porcentaje se establece en 50% y hay cinco instancias disponibles, el número mínimo de instancias disponibles es 3.

Nota

Cuando se especifican tanto MinReadyInstance como MinReadyInstanceRatio y MinReadyInstanceRatio se establece en un número de 0 a 100, el valor de MinReadyInstanceRatio tiene prioridad.** Por ejemplo, si MinReadyInstances se establece en **5 y MinReadyInstanceRatio se establece en 50, el número mínimo de instancias disponibles se establece en el entero más cercano redondeado hacia arriba a partir del resultado calculado de la siguiente fórmula: Número actual de instancias × 50%.

-1

UpdateStrategy

string

No

La política de despliegue. Si el número mínimo de instancias disponibles es 1, el valor del parámetro UpdateStrategy es una cadena vacía (""). Si el número mínimo de instancias disponibles es mayor que 1, especifique este parámetro según sus requisitos. Ejemplos:

  • Realizar una publicación canary para una instancia y publicar las instancias restantes en dos lotes automáticamente con un intervalo de un minuto entre el despliegue de cada instancia:

    {"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}

  • Realizar una publicación canary para una instancia y publicar las instancias restantes en dos lotes manualmente:

    {"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"manual"},"grayUpdate":{"gray":1}}

  • Publicar las instancias en dos lotes automáticamente sin intervalo entre el despliegue de cada instancia:

    {"type":"BatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":0}}

La siguiente tabla describe los parámetros que se utilizan en las declaraciones anteriores.

  • type: el tipo de política de publicación. Valores válidos: GrayBatchUpdate y BatchUpdate.

  • batchUpdate: la política de publicación por fases.

    • batch: el número de lotes de publicación.

    • releaseType: el método de procesamiento para los lotes. Valores válidos: auto y manual.

    • batchWaitTime: el intervalo entre lotes de publicación. Unidad: segundos.

  • grayUpdate: el número de lotes de publicación en la publicación por fases después de una publicación canary. Este parámetro se devuelve solo si el parámetro type se establece en GrayBatchUpdate.

{"type":"GrayBatchUpdate","batchUpdate":{"batch":2,"releaseType":"auto","batchWaitTime":1},"grayUpdate":{"gray":1}}

AutoEnableApplicationScalingRule

string

No

Especifica si se debe habilitar automáticamente una política de escalado automático para la aplicación. Tenga en cuenta las siguientes reglas:

  • true: activa el uso compartido sin inicio de sesión.

  • false: desactiva el uso compartido sin inicio de sesión.

true

Elementos de la respuesta

Elemento

Tipo

Descripción

Ejemplo

object

Los datos devueltos.

RequestId

string

El ID de la solicitud.

91F93257-7A4A-4BD3-9A7E-2F6EAE6D****

Message

string

El mensaje devuelto para la operación.

success

TraceId

string

El ID de rastreo que se utiliza para consultar los detalles de la solicitud.

0a98a02315955564772843261e****

Data

object

La respuesta.

ChangeOrderId

string

El ID del proceso de cambio.

01db03d3-3ee9-48b3-b3d0-dfce2d88****

IsNeedApproval

boolean

Especifica si se requiere aprobación cuando un usuario de RAM realiza una publicación. Tenga en cuenta las siguientes reglas:

  • true

  • false

true

ErrorCode

string

El código de error devuelto si la solicitud falló. Tenga en cuenta las siguientes reglas:

  • El parámetro ErrorCode no se devuelve si la solicitud se realiza correctamente.

  • Si la llamada falla, se devuelve el parámetro ErrorCode. Para obtener más información, consulte la sección "Códigos de error" de este tema.

Code

string

El código de estado HTTP. Tenga en cuenta las siguientes reglas:

  • 2xx: La llamada se realizó correctamente.

  • 3xx: La llamada se redirigió.

  • 4xx: La llamada falló.

  • 5xx: Ocurrió un error del servidor.

200

Success

boolean

Indica si la aplicación se revirtió correctamente. Tenga en cuenta las siguientes reglas:

  • true

  • false

true

Ejemplos

Respuesta exitosa

JSON Formato

{
  "RequestId": "91F93257-7A4A-4BD3-9A7E-2F6EAE6D****",
  "Message": "success",
  "TraceId": "0a98a02315955564772843261e****",
  "Data": {
    "ChangeOrderId": "01db03d3-3ee9-48b3-b3d0-dfce2d88****",
    "IsNeedApproval": true
  },
  "ErrorCode": "",
  "Code": "200",
  "Success": true
}

Códigos de error

Código de estado HTTP

Código de error

Mensaje de error

Descripción

400 InvalidApplication.NotFound The current application does not exist.
400 InvalidParameter.NotEmpty You must specify the parameter %s.
400 InvalidParameter.Obviously The specified parameter is invalid {%s}.
400 InvalidParameter.WithMessage The parameter is invalid {%s}: %s
400 NoComputeResourceQuota.Exceed Your compute resource is insufficient. Please contact us to raise the quota.
400 user.indebt The user has an outstanding payment.
400 NoComputeResourceQuota.App.Exceed You can create %s instances for each application. Please submit a ticket to raise the quota. You can create %s instances for each application. please join the DingTalk group 32874633 for technical support.
400 NoComputeResourceQuota.User.Exceed Your account is limited to create %s instances. Please submit a ticket to raise the quota. Your account is limited to create %s instances. please join the DingTalk group 32874633 for technical support.
400 System.Upgrading The system is being upgraded. Please try again later.
400 Application.ChangerOrderRunning An application change process is in progress. Please try again later. An application change process is in progress. Please try again later.
400 Application.InvalidStatus The application status is abnormal. Please try again later. The application status is abnormal. Please try again later.
400 Application.NotDeployYet The application has not been deployed. Please deploy it and try again. The application has not been deployed. Please deploy it and try again.
400 rollback.error Failed to roll back. Rollback error
400 Application.MissingJdk Your application must at least contain a JDK component.
400 JarApplication.MissingJdk A FatJar application must contain JDK.
400 PandoraApplication.MissingJdk The Pandora application is missing a JDK component.
400 WarApplication.MissingJdkWebcontainer A War application must contain JDK and Tomcat.
400 InvalidComponent.NotFound The current component (such as JDK, Tomcat, or EDASWebContainer) does not exist.
400 InvalidHostnameIp.Invalid The hostname and/or IP is invalid: Hostname [%s], IP [%s].
400 InvalidInstanceSpecification.Unsupported The instance specification is not supported: CPU [%s], memory [%s].
400 InvalidPackageType.NotFound The package type must be War, FatJar, or Image.
400 LogService.ConfigQuotaExceed The maximum number of Log Service configs is exceeded. The maximum number of Log Service configs is exceeded, please join the DingTalk group 32874633 for technical support.
400 LogService.InternalError An exception occurred while calling Log Service. Please submit a ticket to solve the problem. An exception occurred while calling log service. please join the DingTalk group 32874633 for technical support.
400 LogService.LogDirInvalid The log collection path is invalid. The log collection path is invalid.
400 LogService.NotAvailable Log Service is unavailable. Please activate Log Service first. The log service is not available. Please open the log service first.
400 LogService.ProjectNumQuotaExceed The maximum number of Log Service projects is exceeded. The maximum number of Log Service projects is exceeded, please join the DingTalk group 32874633 for technical support.
400 VolumnPath.Conflict Conflict between log collection directory and persistent storage directory. Conflict between log collection directory and persistent storage directory.
400 MountConflict.ConfigMap Conflict detected for ConfigMap path %s.
400 NotFound.ConfigMap The ConfigMap object (ID: %s) does not exist.
400 NotFound.ConfigMapKey The key %s of ConfigMap object (ID: %s) does not exist.
400 MinReadyInstances.Not.Smaller.Replicas The minimum number of available instances must be less than the number of application instances. The minimum number of available instances must be less than the number of application instances.
400 MinReadyInstanceRatio.Invalid The ratio of minimum available instances must be between 0 and 100.
400 Package.Version.Too.Long The maximum length of package version is exceeded. This package version is too long.
400 App.Package.Version.Exists The package version of application already exists. The package version of application already exists.
400 Slb.Occupied The SLB instance is occupied. This SLB is occupied.
400 Slb.Tag.Not.Qualified The current SLB instance cannot be reused because it may have been occupied by %s. The current SLB instance cannot be reused because it may have been occupied by %s.
400 InvalidParameter.FileName The application deployment package name is invalid. This name can contain only alphanumeric characters, hyphens (-), and underscores (_). For deploying java package, you can upload JAR files only if the selected deployment version supports JAR file. Otherwise, upload WAR files only. For deploying php package, you can upload ZIP files only if the selected deployment version supports ZIP file.
400 vswitch.not.exist The specified vSwitch does not exist. The specified vSwitch does not exist. Please change the vSwitch.
404 InvalidNamespaceId.NotFound The specified NamespaceId does not exist.

Consulte Códigos de error para ver la lista completa.

Notas de la versión

Consulte Notas de la versión para ver la lista completa.