Configurando o ajuste de escala do aplicativo
Com o IBM Cloud® Code Engine, você não precisa pensar em dimensionar seu aplicativo porque o número de instâncias em execução de um aplicativo é automaticamente dimensionado para cima ou para baixo (até zero) com base nas cargas de trabalho recebidas. Com o ajuste de escala automático, você não paga por recursos que não são usados.
O Code Engine monitora o número de solicitações no sistema e aumenta e diminui a capacidade das instâncias do aplicativo para atender à carga de solicitações recebidas, incluindo quaisquer conexões HTTP com seu aplicativo. Essas conexões HTTP podem ser solicitações que vêm de fora do seu projeto, de outras cargas de trabalho que estão em execução em seu projeto, ou de produtores de eventos aos quais você pode estar inscrito, independentemente de onde esses produtores estão localizados. O Code Engine replica automaticamente as instâncias de aplicativos e configura a infraestrutura de rede para balancear a carga das solicitações em todas as instâncias.
Como o ajuste de escala funciona
O Code Engine monitora o número de solicitações no sistema e ajusta a escala das instâncias do aplicativo, dentro das restrições das configurações de simultaneidade do aplicativo.
Para observar o ajuste de escala do aplicativo no console do Code Engine, navegue até a sua página de aplicativo específica. Enquanto o aplicativo está em execução, o número de instâncias
em execução é 1 ou maior com base no número máximo de instâncias que você especificou. Quando o aplicativo manipula menos solicitações do que sua simultaneidade de destino configurada, o aplicativo escala o número de instâncias
em execução para o número mínimo configurado de instâncias. Se o número mínimo de instâncias for definido como 0 (valor padrão), o aplicativo será reduzido a zero e o número de instâncias do aplicativo refletirá 0 instâncias. Quando o aplicativo é reduzido e uma solicitação é roteada para o aplicativo, o Code Engine aumenta a capacidade do aplicativo e roteia a solicitação para a instância do aplicativo recém-criada.
Para que os aplicativos possam diminuir a capacidade de forma limpa, o código do aplicativo deve manipular um sinal SIGTERM. Quando o Code Engine é reduzido automaticamente, um sinal SIGTERM é enviado para seu aplicativo. Se seu aplicativo não
manipular o sinal SIGTERM, suas instâncias do app permanecerem no status Terminating pelo tempo configurado pelo valor de tempo limite da solicitação (o valor padrão é 300 segundos). Após a duração do tempo limite da solicitação,
o Code Engine envia um sinal SIGKILL para forçar a parada das instâncias do app no status Terminating
Limites de ajuste de escala
É possível configurar limites de ajuste de escala configurando um intervalo de valores para o número mínimo e máximo de instâncias no qual o Code Engine escala automaticamente o número de instâncias em execução de seu aplicativo. Configure esse intervalo quando você criar ou atualizar aplicativos
-
Número mínimo de instâncias-o número mínimo de instâncias do app que estão sempre em execução, mesmo se nenhuma solicitação for processadas Quando configurado como
0(padrão), o Code Engine remove todas as instâncias quando nenhum tráfego está acessando o aplicativo. Para sempre manter uma instância em execução de seu aplicativo, configure esse valor maior que0. Ao criar ou atualizar um aplicativo com Code Engine por meio do console, configure o número mínimo de valores de instâncias na seção Ajuste automático de escala da guia Recursos e ajuste de escala.. Com a CLI, especifique a opção--min-scalenoapp createeapp updatecomandos. -
Número máximo de instâncias-O número máximo de instâncias que podem estar em execução para o app O dimensionamento automático ocorre até esse limite. Se você definir esse valor como
0, o aplicativo será dimensionado conforme necessário, e o dimensionamento do aplicativo será limitado apenas pelas instâncias de acordo com a cota de recursos do projeto do seu aplicativo. Consulte Limites e cotas para o Code Engine. Ao criar ou atualizar um aplicativo com Code Engine no console, configure o número máximo de valores de instâncias na seção Ajuste automático de escala da guia Recursos e ajuste de escala. Com a CLI, especifique a opção--max-scalenoapp createeapp updatecomandos. O valor padrão para essa opção é10.
Ao conectar seus aplicativos aos produtores de eventos, lembre-se de contabilizar a frequência e o volume dos eventos desses produtores ao configurar seus limites de escala. Por exemplo, se você espera receber muitos eventos ao mesmo tempo e o processamento de cada evento pode levar vários minutos, talvez seja necessário um valor de escala máximo mais alto do que se cada evento puder ser processado rapidamente. Se você configurar o valor muito baixo, poderá experimentar atrasos no recebimento de eventos ou até mesmo perder eventos devido a tempos limites enquanto espera a liberação dos recursos de processamento.
Configurações de ajuste automático de escala para simultaneidade e sincronização
Use as seguintes definições de configuração para controlar o dimensionamento do aplicativo.
-
Concurrency (Concorrência)- Esse valor indica quantas solicitações cada instância do seu aplicativo pode processar ao mesmo tempo. Por exemplo, um valor de moeda de 100 significa que seu código pode lidar com 100 solicitações simultâneas ao mesmo tempo. Este valor é um "limite máximo", significando que o Code Engine não permite mais do que o número de solicitações (conforme especificado com a configuração de simultaneidade) para atingir qualquer instância de seu aplicativo. Portanto, se o seu código for de thread único e puder processar apenas uma solicitação por vez, considere definir a simultaneidade como
1. Quando o número especificado de solicitações é enviado a todas as instâncias em execução do seu aplicativo, o site Code Engine aumenta o número de instâncias em preparação para mais solicitações. Ao criar ou atualizar um aplicativo com Code Engine no console, configure o valor máximo de simultaneidade na seção Ajuste automático de escala da guia Recursos e ajuste de escala. Com a CLI, especifique a opção--concurrencynos comandosapp createeapp update. -
Concorrência alvo - Esse valor funciona como um "limite flexível" ou número de solicitações por instância que você deseja em um sistema carregado. Por exemplo, se você especificar
concurrencycomo100etarget concurrencycomo70, Code Engine tentará limitar o número de solicitações por instância a 70.Especificar essa opção não garante que as solicitações por instância não ultrapassem 70, pois é provável que isso aconteça durante um aumento no tráfego. No entanto, o buffer entre 70 e 100 permite que o sistema crie novas instâncias para reduzir a carga por instância para 70 (ou inferior). Setarget concurrencynão for especificado, o padrão será o valor deconcurrency. Ao criar ou atualizar um aplicativo com Code Engine no console, defina o valor de simultaneidade de destino na seção Autoscaling da guia Resources & scaling. Com a CLI, especifique a opção--concurrency-targetnoapp createeapp updatecomandos. -
Tempo limite da solicitação-A quantidade de tempo, em segundos que o aplicativo deve responder às solicitações, ou então elas falham. Ao criar ou atualizar um aplicativo com Code Engine por meio do console, configure o valor de tempo limite da solicitação na seção Autoscaling da guia Recursos e ajuste de escala. Com a CLI, especifique a opção
--request-timeoutnoapp createeapp updatecomandos. -
Atraso de redução de escala - A quantidade de tempo, em segundos, que deve passar com a simultaneidade reduzida antes que o aplicativo reduza a escala. Se você souber o padrão de solicitações recebidas para seu aplicativo, poderá optar por especificar um valor maior que o padrão de
0para atrasar o ajuste de escala de seu aplicativo. Se você usar um valor alto para essa opção, o número médio de instâncias do aplicativo em execução simultaneamente poderá aumentar, o que incorre em custo adicional. Mesmo com uma configuração de atraso de redução de escala do0, o sistema aguarda um curto período de tempo antes que o aplicativo reduza o número de instâncias para assegurar que uma queda na simultaneidade de solicitação seja estável o suficiente para garantir uma redução de capacidade. Ao criar ou atualizar um aplicativo com o Code Engine por meio do console, configure o valor de atraso de ajuste de escala na seção Ajuste de escala automático da guia Recursos e ajuste de escala Com a CLI, especifique a opção--scale-down-delaynoapp createeapp updatecomandos.
Por exemplo, se o valor do número máximo de instâncias for configurado como 10 e a simultaneidade for configurado como 100, um aplicativo poderá processar 1000 solicitações simultâneas antes que possa ocorrer um possível
enfileiramento de solicitações. Se você esperar mais de 1000 solicitações simultaneamente, poderá considerar o aumento do número máximo de valores de instâncias para seu app.
Para obter mais informações sobre o funcionamento do site Code Engine, consulte Ajuste do atraso de redução de escala do site IBM Cloud Code Engine para reduzir os tempos de resposta do aplicativo.
Se você configurar o número mínimo de instâncias igual ao número máximo de instâncias, o ajuste de escala não ocorrerá e os valores de atraso de moeda de destino e de redução de escala não se aplicarão. No entanto, o valor de simultaneidade ainda está em vigor.
Cenário de exemplo para ajuste automático de escala
Suponha que você tenha um aplicativo configurado com as configurações de ajuste automático de escala a seguir.
- Número mínimo de instâncias = 4
- Número máximo de instâncias = 20
- Simultaneidade = 2
Com essas configurações, seu app pode processar 2 solicitações simultâneas ao mesmo tempo.. Quando não há tráfego, seu aplicativo é escalado automaticamente para 4 instâncias.. As 4 instâncias podem manipular apenas 4 * 2 (moeda) = 8 solicitações O aplicativo pode escalar até um máximo de 20 instâncias, de modo que as 20 instâncias possam manipular 20 * 2 (moeda) = 40 solicitações, assumindo configurações suficientes de CPU e memória para o aplicativo.
Suponha que seu aplicativo seja um aplicativo da web estático que requer 6 chamadas para seu aplicativo para carregar uma página de login. Suponha que 10 pessoas efetuem login na página de login do aplicativo ao mesmo tempo (10 * 6 = 60 chamadas). Como 60 chamadas são maiores que 40 solicitações que podem ser manipuladas por seu aplicativo, os usuários do aplicativo provavelmente observam lentidão conforme as chamadas são enfileiradas.
Após cerca de um minuto sem tráfego com relação ao seu app, o Code Engine começa a diminuir a capacidade automaticamente. Quando seu aplicativo é reduzido, algumas instâncias são configuradas no status Terminating. Code Engine
envia um sinal SIGTERM para seu aplicativo e seu código deve manipular esse sinal e encerrar. Se seu aplicativo não manipular esse sinal, suas instâncias do app permanecerem no status Terminating pelo tempo configurado pelo
valor de tempo limite da solicitação (o valor padrão é 300 segundos). Após a duração do tempo limite da solicitação, o Code Engine envia um sinal SIGKILL para forçar a parada das instâncias do app no status Terminating
Se você tiver 8 instâncias ativas e 12 instâncias permanecer no status Terminating por 300 segundos (5 minutos). Essas 12 instâncias não recebem nenhuma solicitação de solicitação. Se mais de 8 * 2 (moeda) = 16 solicitações chegarem,
o Code Engine escalará novas instâncias.
Neste exemplo, o valor de simultaneidade 2 é baixo para esse conteúdo estático. Deve-se determinar os valores de ajuste automático de escala a serem configurados para seu app, o que depende do que a implementação de seu app pode
manipular com seus recursos de memória e CPU designados.
Otimizar a latência e o rendimento
Para otimizar a latência e o rendimento do aplicativo, entenda os prós e os contras de alguns modelos comuns e as melhores práticas para configurar a simultaneidade do contêiner.
Use a configuração de simultaneidade para especificar o número máximo de solicitações que podem ser processadas simultaneamente por instância quando você cria ou atualiza um aplicativo. Na guia do console do Code Engine, configure o valor de
simultaneidade na seção Tempo de execução. Com a CLI, use a opção --concurrency (alias --cn) com o comando app create ou app update.
| Modelo | Prós | Contras |
|---|---|---|
Simultaneidade única, --cn=1 |
Escolha a configuração de simultaneidade única quando o aplicativo entregar uma carga de trabalho com uso intensivo de memória ou de CPU porque apenas uma solicitação entra na instância do aplicativo por vez e, portanto, obtém a quantia total de CPU e de memória configurada para ela. | Os aplicativos que usam o modelo de simultaneidade única são ampliados rapidamente. A expansão pode introduzir latência adicional e rendimento inferior porque é mais caro criar uma nova instância do aplicativo do que reutilizar uma existente. Não escolha esse modelo se as solicitações puderem ser processadas simultaneamente e a latência for um aspecto crítico do aplicativo. |
Alta simultaneidade, --cn=100 (padrão) ou superior |
Escolha essa configuração se seu aplicativo entregar um alto volume de cargas de trabalho de solicitação de HTTP ou de resposta que não façam uso intensivo de CPU ou de memória e que possam aguardar recursos. Você pode escolher essa configuração de simultaneidade para um back-end de API que lê e grava dados em operações de criação, recuperação, atualização e exclusão em um banco de dados remoto. Enquanto algumas solicitações aguardam E/S, outras solicitações podem ser processadas sem impactar a latência geral e o rendimento. | Essa configuração não é ideal quando solicitações simultâneas competem por CPU, memória ou E/S porque a competição por recursos pode atrasar a execução e impactar negativamente a latência e o rendimento. |
Simultaneidade ideal, --cn=N |
Escolha a configuração de simultaneidade ideal se você souber a quantidade de recursos que são necessários para uma única solicitação a fim de atender o tempo de resposta que você deseja para o seu aplicativo. Você pode escolher essa configuração
se o seu aplicativo for um aplicativo de tradução de idioma natural, em que o modelo de aprendizado de máquina para a conversão de idioma é 32 GB, e um único cálculo de tradução precisa de cerca de 0.7 vCPU
por solicitação. É possível escolher uma configuração de 9 vCPUs e 32 GB de memória por instância. A simultaneidade de contêiner ideal é de cerca de 13 (9 vCPU/0.7 vCPU). |
Não escolha a configuração de simultaneidade ideal se você não souber os requisitos de recursos para o seu aplicativo. Configurar a simultaneidade de contêiner errada pode causar um ajuste de escala muito agressivo ou muito lento, o que pode impactar a latência, a taxa de erros e os custos de seu aplicativo. Para obter mais informações, consulte Determinar simultaneidade para o seu contêiner de aplicativo. |
Simultaneidade infinita, --cn=0 (desativado) |
Desativado | A configuração de simultaneidade infinita não é suportada no Code Engine. A configuração de simultaneidade infinita encaminha o maior número possível de solicitações para uma única instância de aplicativo, o que pode atrasar o ajuste de escala de instâncias de aplicativos adicionais. |
Determinando a simultaneidade do seu contêiner de aplicativo
O valor de simultaneidade de contêiner ideal é determinado pelo número máximo de solicitações simultâneas que o aplicativo pode manipular com uma latência de solicitação aceitável.
A simultaneidade de contêiner tem um impacto direto na taxa de sucesso, na latência e no rendimento do aplicativo. Quando o valor de simultaneidade do contêiner é muito alto para o aplicativo suportar, a latência e a taxa de transferência
sofrem um impacto negativo, e você pode observar respostas de erro em 502 e 503.
Quando o valor de simultaneidade do contêiner é muito baixo para o aplicativo, o sistema ajusta a escala do aplicativo mais rapidamente e espalha a solicitação em muitas instâncias do aplicativo, introduzindo custos adicionais e latência.
Durante um burst de carga, um valor de simultaneidade baixo também pode levar a respostas temporárias de 502 quando os buffers internos do sistema são executados.
Para determinar a configuração de simultaneidade de contêiner para o seu aplicativo, examine solicitações e latência.
-
Crie um aplicativo e configure sua simultaneidade como
1000(max) e ambos,min-scaleemax-scalecomo1.ibmcloud ce application create --name APPNAME --image APPIMAGE --min-scale=1 --max-scale=1 --concurrency=1000 -
Comece pelo envio de uma alta taxa de solicitações. Se ocorrerem erros
502, diminua a taxa até que o resultado mostre uma taxa de 100% de sucesso. -
Encontre a latência de solicitação da saída da Etapa 2. Se a latência de solicitação não for aceitável, diminua ainda mais a taxa de solicitação até que a latência da solicitação pareça aceitável. Observe que a duração da solicitação também é importante, pois há diferença quando o cálculo da solicitação leva
2segundos ou100milissegundos.Sua taxa de solicitação e sua latência aceitáveis variam de acordo com as características de seu aplicativo e com sua configuração de ajuste de escala. Por exemplo, se o cálculo dentro do seu aplicativo demorar cerca de 100 ms e sua configuração de simultaneidade for de 10, uma instância de aplicativo será capaz de processar cerca de 100 solicitações por segundo com uma latência de cerca de 100 ms (ignorando a latência de rede).
-
Para calcular o valor de simultaneidade de contêiner para o seu aplicativo, pegue a taxa da Etapa 2 (em
req/s) e divida pela latência da Etapa 3 (em segundos):CC = RATE/LATENCY. Por exemplo, se a taxa for80solicitações por segundo e a latência for2segundos, a simultaneidade resultante será simultaneidade =80 req/s / 2 s = 40. -
Atualize o aplicativo para configurar a simultaneidade de contêiner para o valor que você localizou na etapa anterior e reexecute a carga de trabalho para verificar se a taxa de sucesso e a latência são aceitáveis.
-
Experimente com o aplicativo aumentando o valor de simultaneidade do contêiner e observando a taxa de sucesso e a latência.
-
Atualize o seu aplicativo com o valor de simultaneidade de contêiner ideal e remova os limites
min-Scaleemax-scalepara permitir que o aplicativo escale automaticamente.
Observando como seu app é escalado com a CLI
É possível observar o número de instâncias em execução de seu app com a CLI.
-
Crie um aplicativo com o comando
app create.ibmcloud ce application create --name myapp --image icr.io/codeengine/helloworld -
Chame o aplicativo. É possível obter a URL de seu app por meio da saída do comando
app createou executandoibmcloud ce app get --name myapp --output url.curl https://myapp.4svg40kna19.us-south.codeengine.appdomain.cloud -
Execute o comando
application getpara exibir o status de seu aplicativo. Verifique o valor deRunning instances. Neste exemplo, o app tem1instância em execução. Por exemplo,ibmcloud ce application get --name myappSaída de exemplo
[...] OK Name: myapp [...] URL: https://myapp.4svg40kna19.us-south.codeengine.appdomain.cloud Cluster Local URL: http://myapp.4svg40kna19.svc.cluster.local Console URL: https://cloud.ibm.com/codeengine/project/us-south/01234567-abcd-abcd-abcd-abcdabcd1111/application/myapp/configuration Status Summary: Application deployed successfully Environment Variables: Type Name Value Literal CE_API_BASE_URL https://api.private.us-south.codeengine.cloud.ibm.com Literal CE_APP myapp Literal CE_DOMAIN us-south.codeengine.appdomain.cloud Literal CE_PROJECT_ID abcdefgh-abcd-abcd-abcd-1a2b3c4d5e6f Literal CE_REGION us-south Literal CE_SUBDOMAIN abcdabcdab Image: icr.io/codeengine/helloworld Resource Allocation: CPU: 1 Ephemeral Storage: 400M Memory: 4G Revisions: myapp-ds8fn-1: Age: 6m25s Traffic: 100% Image: icr.io/codeengine/helloworld (pinned to fe0446) Running Instances: 1 Runtime: Concurrency: 100 Maximum Scale: 10 Minimum Scale: 0 Timeout: 300 Conditions: Type OK Age Reason ConfigurationsReady true 6m10s Ready true 5m56s RoutesReady true 5m56s Events: Type Reason Age Source Messages Normal Created 6m28s service-controller Created Configuration "myapp" Normal Created 6m28s service-controller Created Route "myapp" Instances: Name Revision Running Status Restarts Age myapp-ds8fn-1-deployment-79bdd76749-khtmw myapp-ds8fn-1 2/2 Running 0 32sEspere alguns minutos que podem ser necessários para seu app escalar para zero.
-
Execute o comando
application getnovamente e observe que o valor paraRunning instancesfoi escalado para zero. Quando o aplicativo manipula menos solicitações do que sua simultaneidade de destino configurada, o aplicativo escala o número de instâncias em execução para o número mínimo configurado de instâncias. Neste cenário, o número de instâncias em execução é escalado automaticamente para zero.. Quando a opção--min-scaleé configurada como0(valor padrão), o número de instâncias em execução é escalado automaticamente para zero..Espere alguns minutos que podem ser necessários para seu app escalar para zero.
ibmcloud ce application get -n myappSaída de exemplo
OK Name: myapp [...] URL: https://myapp.4svg40kna19.us-south.codeengine.appdomain.cloud Cluster Local URL: http://myapp.4svg40kna19.svc.cluster.local Console URL: https://cloud.ibm.com/codeengine/project/us-south/01234567-abcd-abcd-abcd-abcdabcd1111/application/myapp/configuration Image: icr.io/codeengine/helloworld Resource Allocation: CPU: 1 Ephemeral Storage: 400M Memory: 4G Revisions: myapp-ds8fn-1: Age: 12m Traffic: 100% Image: icr.io/codeengine/helloworld (pinned to 548d5c) Running Instances: 0 Runtime: Concurrency: 100 Maximum Scale: 10 Minimum Scale: 0 Timeout: 300 Conditions: Type OK Age Reason ConfigurationsReady true 3m7s Ready true 2m54s RoutesReady true 2m54s Events: Type Reason Age Source Messages Normal Created 3m21s service-controller Created Configuration "myapp" Normal Created 3m20s service-controller Created Route "myapp" -
Chame o aplicativo novamente para ajustar a escala de zero.
curl https://myapp.4svg40kna19.us-south.codeengine.appdomain.cloud -
Execute o comando
application getnovamente e observe que o valor paraRunning instancesfoi aumentado de zero. Por exemplo,ibmcloud ce application get -n myappSaída de exemplo
OK Name: myapp [...] URL: https://myapp.4svg40kna19.us-south.codeengine.appdomain.cloud Cluster Local URL: http://myapp.4svg40kna19.svc.cluster.local Console URL: https://cloud.ibm.com/codeengine/project/us-south/01234567-abcd-abcd-abcd-abcdabcd1111/application/myapp/configuration Status Summary: Application deployed successfully Environment Variables: Type Name Value Literal CE_API_BASE_URL https://api.private.us-south.codeengine.cloud.ibm.com Literal CE_APP myapp Literal CE_DOMAIN us-south.codeengine.appdomain.cloud Literal CE_PROJECT_ID abcdefgh-abcd-abcd-abcd-1a2b3c4d5e6f Literal CE_REGION us-south Literal CE_SUBDOMAIN abcdabcdab Image: icr.io/codeengine/helloworld Resource Allocation: CPU: 1 Ephemeral Storage: 400M Memory: 4G Revisions: myapp-00001: Age: 42s Latest: true Traffic: 100% Image: icr.io/codeengine/helloworld (pinned to 1cee99) Running Instances: 1 Runtime: Concurrency: 100 Maximum Scale: 10 Minimum Scale: 0 Scale Down Delay: 0 Timeout: 300 Conditions: Type OK Age Reason ConfigurationsReady true 25s Ready true 12s RoutesReady true 12s Events: Type Reason Age Source Messages Normal Created 44s service-controller Created Configuration "myapp" Normal Created 43s service-controller Created Route "myapp" Instances: Name Revision Running Status Restarts Age myapp-00001-deployment-d59b87654-xkqh7 myapp-00001 3/3 Running 0 43s
Configurando o número de instâncias mínimas e máximas para seu app
É possível mudar o número de instâncias em execução de seu app atualizando o valor mínimo e máximo para o número de instâncias do app..
O valor padrão para o número mínimo de instâncias para o seu aplicativo é 0 Se seu app não receber nenhum tráfego, ele será escalado para o 0 e nenhuma instância de seu app será executada. Nessa situação, seu aplicativo
pode ser mais lento para responder quando ele receber o tráfego novamente, enquanto ele escala o backup. É possível alterar esse comportamento atualizando o aplicativo e definindo a escala mínima para 1 no console ou na CLI.
O valor padrão para o número máximo de instâncias para seu app é 0, que permite que seu app seja escalado conforme necessário. Para obter mais informações, consulte Limites de ajuste de escala.
Mudando o intervalo de ajuste automático de escala do console
Para mudar o intervalo no qual o Code Engine escala automaticamente o número de instâncias em execução para um app no console, siga estas etapas.
- Navegue para o seu app
- Selecione a guia Configuration (Configuração ).
- Selecione a guia Resources & scaling (Recursos e dimensionamento ).
- Configure o número para instâncias mínimas e máximas para seu app.
- (Opcional) Revise e defina as configurações de simultaneidade e de sincronização da solicitação para escalar automaticamente seu app.
- Clique em Deploy para salvar suas alterações e implementar a revisão do aplicativo.
Quando você atualiza seu aplicativo, seu app cria uma nova revisão e roteia o tráfego para essa instância.
Mudando o intervalo de ajuste automático de escala com a CLI
Para mudar o intervalo no qual o Code Engine escala automaticamente o número de instâncias em execução para um app com a CLI, execute o comando application update com as opções --min-scale e --max-scale configuradas para o número de instâncias que você deseja para o seu app. Opcionalmente, é possível configurar configurações de simultaneidade e de sincronização de solicitação
para seu app. Essas opções incluem --concurrency, --concurrency-target, --request-timeout e --scale-down-delay. Para obter mais informações sobre a configuração desses valores de ajuste
automático de escala, consulte Limites de ajuste de escala e Configurações de ajuste automático de escala para simultaneidade e sincronização.
Quando você atualiza seu aplicativo, seu app cria uma nova revisão e roteia o tráfego para essa instância.