Usuwanie błędów dotyczących przekroczenia rozmiaru zadania
W tym artykule opisano sposób rozwiązywania JobSizeExceededException
problemów i DeploymentJobSizeExceededException
. Rozmiar zadania przekracza błędy mogą wystąpić podczas wdrażania pliku Bicep lub szablonu usługi Azure Resource Manager (szablon usługi ARM).
Objaw
Podczas wdrażania szablonu jest wyświetlany błąd informujący, że wdrożenie przekroczyło limity.
Przyczyna
Ten błąd występuje, gdy wdrożenie przekracza dozwolony limit. Zazwyczaj ten błąd występuje, gdy szablon lub zadanie uruchamiające wdrożenie jest zbyt duże.
Zadanie wdrożenia nie może przekraczać 1 MB i zawiera metadane dotyczące żądania. W przypadku dużych szablonów metadane połączone z szablonem mogą przekraczać dozwolony rozmiar zadania.
Szablon nie może przekraczać 4 MB, a każda definicja zasobu nie może przekraczać 1 MB. Limity mają zastosowanie do końcowego stanu szablonu po rozwinięciu definicji zasobów, które używają pętli do tworzenia wielu wystąpień. Stan końcowy zawiera również rozpoznane wartości dla zmiennych i parametrów.
Inne limity szablonów to:
- 256 parametrów
- 256 zmiennych
- 800 zasobów (w tym liczba kopii)
- 64 wartości wyjściowe
- 24 576 znaków w wyrażeniu szablonu
Rozwiązanie 1. Ostrożnie używaj zależności
Użyj niejawnej zależności utworzonej, gdy zasób odwołuje się do innego zasobu według jego symbolicznej nazwy. W przypadku większości wdrożeń nie jest konieczne użycie dependsOn
i utworzenie jawnej zależności.
Rozwiązanie 2. Uproszczenie szablonu
Gdy plik wdraża wiele różnych typów zasobów, rozważ podzielenie go na moduły. Podziel typy zasobów na grupy logiczne i dodaj moduł dla każdej grupy. Jeśli na przykład musisz wdrożyć wiele zasobów sieciowych, możesz przenieść te zasoby do modułu.
Możesz ustawić inne zasoby jako niejawne zależności i pobrać wartości z danych wyjściowych modułów.
Rozwiązanie 3. Zmniejszenie rozmiaru nazwy
Spróbuj skrócić długość nazw używanych dla parametrów, zmiennych i danych wyjściowych. Gdy te wartości są powtarzane w pętlach, długa nazwa jest mnożona wiele razy.