Dela via


Lösa fel för att jobbstorleken har överskridits

I den här artikeln beskrivs hur du löser felen JobSizeExceededException och DeploymentJobSizeExceededException . Fel som överskrider jobbstorleken kan inträffa när du distribuerar en Bicep-fil eller En Azure Resource Manager-mall (ARM-mall).

Symptom

När du distribuerar en mall får du ett felmeddelande om att distributionen har överskridit gränserna.

Orsak

Du får det här felet när distributionen överskrider en tillåten gräns. Vanligtvis visas det här felet när mallen eller jobbet som kör distributionen är för stort.

Distributionsjobbet får inte överstiga 1 MB och det innehåller metadata om begäran. För stora mallar kan metadata som kombineras med mallen överskrida ett jobbs tillåtna storlek.

Mallen får inte överstiga 4 MB och varje resursdefinition får inte överstiga 1 MB. Gränserna gäller för mallens slutliga tillstånd när den har utökats för resursdefinitioner som använder loopar för att skapa många instanser. Sluttillståndet omfattar även matchade värden för variabler och parametrar.

Andra mallgränser är:

  • 256 parametrar
  • 256 variabler
  • 800 resurser (inklusive antal kopior)
  • 64 utdatavärden
  • 24 576 tecken i ett malluttryck

Lösning 1: Använd beroenden noggrant

Använd ett implicit beroende som skapas när en resurs refererar till en annan resurs med dess symboliska namn. För de flesta distributioner behöver du inte använda dependsOn och skapa ett explicit beroende.

Lösning 2: Förenkla mallen

När filen distribuerar många olika resurstyper bör du överväga att dela upp den i moduler. Dela upp dina resurstyper i logiska grupper och lägg till en modul för varje grupp. Om du till exempel behöver distribuera många nätverksresurser kan du flytta dessa resurser till en modul.

Du kan ange andra resurser som implicita beroenden och hämta värden från utdata från moduler.

Lösning 3: Minska namnstorleken

Försök att förkorta längden på de namn som du använder för parametrar, variabler och utdata. När dessa värden upprepas i loopar multipliceras ett långt namn många gånger.