Resolver erros para o tamanho da tarefa excedido
Este artigo descreve como resolver os JobSizeExceededException
erros e DeploymentJobSizeExceededException
. O tamanho da tarefa excedeu os erros quando implementa um ficheiro Bicep ou um modelo de Resource Manager do Azure (modelo do ARM).
Sintoma
Ao implementar um modelo, recebe um erro a indicar que a implementação excedeu os limites.
Causa
Obtém este erro quando a implementação excede um limite permitido. Normalmente, vê este erro quando o modelo ou a tarefa que executa a implementação é demasiado grande.
A tarefa de implementação não pode exceder 1 MB e isso inclui metadados sobre o pedido. Para modelos grandes, os metadados combinados com o modelo podem exceder o tamanho permitido de uma tarefa.
O modelo não pode exceder 4 MB e cada definição de recurso não pode exceder 1 MB. Os limites aplicam-se ao estado final do modelo depois de este ter sido expandido para definições de recursos que utilizam ciclos para criar muitas instâncias. O estado final também inclui os valores resolvidos das variáveis e dos parâmetros.
Outros limites de modelo são:
- 256 parâmetros
- 256 variáveis
- 800 recursos (incluindo a contagem de cópias)
- 64 valores de saída
- 24 576 carateres numa expressão de modelo
Solução 1: Utilizar as dependências cuidadosamente
Utilize uma dependência implícita criada quando um recurso referencia outro recurso pelo respetivo nome simbólico. Para a maioria das implementações, não é necessário utilizar dependsOn
e criar uma dependência explícita.
Solução 2: Simplificar o modelo
Quando o seu ficheiro implementar vários tipos de recursos diferentes, considere dividi-lo em módulos. Divida os tipos de recursos em grupos lógicos e adicione um módulo para cada grupo. Por exemplo, se precisar de implementar muitos recursos de rede, pode mover esses recursos para um módulo.
Pode definir outros recursos como dependências implícitas e obter valores a partir da saída dos módulos.
Solução 3: Reduzir o tamanho do nome
Tente encurtar o comprimento dos nomes que utiliza para parâmetros, variáveis e saídas. Quando estes valores são repetidos em ciclos, um nome longo é multiplicado muitas vezes.